PyOpenGL 加速究竟是什么?

Enr*_*rba 4 python opengl pyopengl

标题是这里的主要问题。我在我的计算机上运行了一些 PyOpenGL 代码,但运行速度有些慢。我意识到我没有安装 PyOpenGL-accelerate。这根本没有改变速度,但是大多数关于 Python OpenGL 绑定的教程都建议应该安装 PyOpenGL-accelerate。

这个模块到底有什么作用?

Val*_*tin 6

首先请注意,PyOpenGL-accelerate 不是灵丹妙药。因此,如果您的应用程序优化已经很差,那么 PyOpenGL-accelerate 不会为您带来太多额外的性能。

话虽如此。PyOpenGL-accelerate 由 Cython 加速器模块组成,它们试图加速 PyOpenGL 3.x 的各个方面。因此,如果您正在使用glBegin()glEnd()绘制,那么您将不会从中获得任何性能。

那么什么是 Cython 加速器模块?

这些模块是完全独立的,创建的目的仅仅是为了比在 CPython 中运行的等效纯 Python 代码运行得更快。理想情况下,如果加速版本在给定系统上不可用,加速器模块将始终具有纯 Python 等价物作为后备。CPython 标准库广泛使用加速器模块。

Python – 二进制扩展

更通俗地说。可以这么说,Cython有点像 Python 和 C 的混合体。目标是优化和执行速度。

与 PyOpenGL-accelerate 相关,这意味着 PyOpenGL 提供的各种帮助程序类。而是以提供更多性能的方式实现。