问题标签 [pyglet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1105 浏览

python - 为什么我的 pyglet 顶点列表和批处理在 Windows 上会很慢?

我正在使用库 pyglet 在 python 中编写 opengl 代码。当我使用 pyglet.graphics.vertex_list 或 pyglet.graphics.batch 对象在屏幕上绘制时,与普通的旧 pyglet.graphics.draw() 或 glVertex() 调用相比,它们非常慢(~0.1 fps),这大约是相同几何图形的 40fps。在 Linux 中,vertex_list 的速度与 glVertex 大致相同,这令人失望,而批处理方法的速度大约是后者的两倍,这比我希望的要好一些,但收益并不多。

0 投票
2 回答
5278 浏览

python - opengl用顶点颜色设置纹理颜色

因为我需要显示大量独立移动的标签,所以我需要将pyglet中的标签渲染到纹理(否则为每个字形更新顶点列表太慢)。

我有一个解决方案,但我的问题是包含字形的纹理是黑色的,但我希望它是红色的。请参见下面的示例:

知道我怎么给这个上色吗?

0 投票
9 回答
18336 浏览

python - PyOpenGl 还是 pyglet?

我希望对 openGL 和 Python 进行一些修改,但找不到使用 PyOpenGl 与 pyglet 的充分理由

你会推荐哪个,为什么?

0 投票
5 回答
8163 浏览

python - 从 OpenGL glReadPixels 获取数据(使用 Pyglet)

我在应用程序的 Python 中使用 Pyglet(和 OpenGL),我正在尝试使用 glReadPixels 来获取一组像素的 RGBA 值。我的理解是 OpenGL 将数据作为打包整数返回,因为这就是它们在硬件上的存储方式。但是,出于显而易见的原因,我想将其转换为正常格式以供使用。根据一些阅读,我想出了这个:http ://dpaste.com/99206/ ,但是它失败并出现 IndexError。我该怎么做呢?

0 投票
5 回答
24740 浏览

python - Python游戏库Pygame和Pyglet的区别?

我有一些使用 Pygame 的经验,但这些天似乎有很多关于 Pyglet 的嗡嗡声。

这两个库如何比较?在功能和易用性方面,使用其中一个有什么优势?

最后,你会说一个比另一个更Pythonic吗?

0 投票
1 回答
693 浏览

image - 如何将 Pyglet 图像的区域放入 PIL 图像中?

我的应用程序从视频中读取帧(使用 pyglet),提取“条带”(即区域 - 全宽 1 到 6 条视频线),然后将每个条带(附加它)粘贴到稍后可以写出 *. .png 文件。

问题是 Pyglet GL 图像存储在图形内存中,因此 re 大小非常有限。我目前的笨拙解决方法是将要成为的 png 图像构建为小图块(即在 pyglet GL 大小限制内),当图块已满时,将其写入 *png 文件,将其作为 PIL 图像文件读回,然后将平铺图像粘贴/附加到最终的 PIL Image * png 文件中。

我认为应该可以将 pyglet-GL 条转换为 PIL 图像友好格式,并将其直接粘贴/附加到最终的 PIL 图像中,因此不需要瓷砖业务,这会使事情变得非常复杂并具有性能影响.

但是我找不到如何将条形数据转换为可以粘贴到 PIL 图像中的表单。已经看到许多请求重新转换为另一种方式,但我从未与牛群一起奔跑。

0 投票
2 回答
1881 浏览

python - 如何将 Pyglet 图像转换为 PIL 图像?

我想将 Pyglet.AbstractImage 对象转换为 PIL 图像以进行进一步操作这里是我的代码

但显示的图像出错了。那么如何正确地将图像从 pyglet 转换为 PIL 呢?

0 投票
6 回答
3074 浏览

python - 如何在 Python 中进行非阻塞 URL 获取

我正在Pyglet中编写一个 GUI 应用程序,它必须显示来自 Internet 的数十到数百个缩略图。现在,我正在使用urllib.urlretrieve来抓取它们,但是每次都会阻塞直到它们完成,并且一次只能抓取一个。

我宁愿并行下载它们,并在完成后立即显示它们,而不会在任何时候阻塞 GUI。做这个的最好方式是什么?

我对线程了解不多,但看起来线程模块可能会有所帮助?或者也许有一些我忽略的简单方法。

0 投票
3 回答
2353 浏览

python - Python 视频框架

我正在寻找一个 Python 框架,它可以让我播放视频并在该视频上绘图(用于标记目的)。

我试过 Pyglet,但这似乎不是特别好 - 在现有视频上绘图时,会出现闪烁(即使有双缓冲和所有这些好东西),而且似乎没有办法在每帧回调期间获取视频中的帧索引(仅从上一帧开始经过的时间)。

0 投票
2 回答
866 浏览

python - python优化的程序化控制?

我一直在玩pyglet。这是很不错的。但是,如果我运行我的代码,该代码位于一个可执行文件(称为 game.py)中,前缀通常为

通过做

然后有点笨拙。但是如果我运行它

或者

然后它的超级光滑。

我不太在乎为什么它在没有优化的情况下运行缓慢;pyglet 的文档提到优化会禁用许多断言以及 OpenGL 的错误检查,我很高兴将其保留在此。

我的问题是:分发 Python 代码的人如何确保最终用户(对调试或修改代码的兴趣为零)运行代码的优化版本。除了告诉人们确保他们在发行说明中使用优化(他们可能无论如何都不会阅读)之外,肯定有更好的方法吗?

在 Linux 上,我可以轻松地提供一个./game脚本来为最终用户运行该文件:

但这不是很跨平台。

我有一个想法,我应该能够将#!线路更改为

或者

但这些似乎没有按预期工作,我不确定他们会在 Windows 上做什么。

是否有某种方法可以从我不知道的代码中控制优化?就像是:

运送多平台 python 代码的人们认为该领域的最佳实践是什么?