我对在Python中使用OpenGL很感兴趣。我在C++和Objto-C中使用了OpenGL,但是在Python中没有太多的经验。我想知道是否有一个好的教程,在雪豹工作。如果可能的话,我更喜欢保持64位模式,因为我听说32位程序需要加载许多额外的32位库。在
我已经试过了。当我运行代码时,它崩溃了,并显示以下消息:
ImportError: /System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/wx-2.8-mac-unicode/wx/_core_.so: no appropriate 64-bit architecture (see "man python" for running in 32-bit mode)
wxPython中似乎有一个bug阻止它在64位系统上工作。在
我也看了Pyglet,但是他们有一个similar issue。它们提供了一种解决方法(将Python设置为32位模式),但看起来他们不会修复它。在
最后,我看了一下PyGLUT,但我认为它只适用于Windows。在
有没有其他库可以让我访问OpenGL并在屏幕上绘图?同样,我希望保持64位模式,但是如果没有任何效果,我将切换到32位并再次尝试wxPython或Pyglet。在
编辑:我也尝试过PyGame。它依赖于SDL,在SL中是broken,我曾想过通过PyObjc尝试使用Cocoa,但是Xcode Python应用程序模板have been removed。在
可能没有什么好理由可以避免32位模式。当然,除非Python程序需要更大的地址空间。在
我已经在雪豹身上成功地使用了PyOpenGL3.0.0。它使用ctypes,因此如果这些库可用,它应该进行64位调用(SnowLeopard的Python包含64位版本)。我没有在PyOpenGL中使用wxPython的东西,所以这可能是您遇到问题的地方,但是PyOpenGL还包括GLUT,这两个都运行得很好。在
你可以试试pygame。Pygame是围绕SDL的python包装器。根据他们的网站,他们有MaxOSX二进制文件。下面是一个在OpenGL中使用pygame的simple example。一旦你能够创建窗口和处理事件,大多数OpenGL编程就像它是在C或C++中,但是有一些附加的Python善良。对于OpenGL来说,NeHe是一个很好的教程。在
相关问题 更多 >
编程相关推荐