簡體   English   中英

使用Snow Leopard的Python OpenGL?

[英]OpenGL in Python with Snow Leopard?

我有興趣在Python中使用OpenGL。 我在C ++和Objective-C中使用過OpenGL,但我在Python方面沒有太多經驗。 我想知道是否有一個適用於Snow Leopard的好教程。 如果可能的話,我寧願保持64位模式,因為我聽說過32位程序需要加載很多額外的32位庫。

我已經嘗試過PyOpenGL / wxPython教程 當我運行代碼時,它崩潰了這條消息:

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中存在一個錯誤 ,它阻止它在64位系統上運行。

我也看過Pyglet,但他們有類似的問題 它們提供了一種解決方法(將Python設置為32位模式),但它看起來並不像是要修復它。

最后,我查看了PyGLUT,但我認為它僅適用於Windows。

還有其他庫可以讓我訪問OpenGL並在屏幕上繪圖嗎? 同樣,我寧願保持64位模式,但如果沒有任何作用,我將切換到32位並再次嘗試wxPython或Pyglet。


編輯:我也試過PyGame。 這取決於在SL中被破壞的 SDL。 我想過嘗試通過PyObjc使用Cocoa,但Xcode Python應用程序模板已被刪除

我已經在Snow Leopard上成功使用了PyOpenGL 3.0.0。 它使用ctypes,因此如果這些庫可用,它應該進行64位調用(而Snow Leopard的Python包含64位版本)。 我沒有在PyOpenGL中使用wxPython的東西,所以你可能遇到問題,但PyOpenGL也包括GLUT,它們都運行正常。

可能沒有理由避免使用32位模式。 當然,除非你的Python程序需要更大的地址空間。

你可以嘗試pygame。 Pygame是圍繞SDL的python包裝器。 根據他們的網站,他們有Max OS X二進制文件。 這是一個使用pygame和OpenGL的簡單示例 一旦你能夠創建窗口並處理事件,大多數OpenGL編程就像在C或C ++中一樣,但是有一些額外的python優點。 對於OpenGL來說,一個很棒的教程是NeHe。

此外,當在python中使用OpenGL進行編程時,請記住,當涉及到3D圖形的要求時,Python數據結構可能會相當慢。 例如,PyGL開發人員建議將ctypes用於涉及圖形的操作,因為通過這種方式,您可以獲得具有可靠FPS的某些復雜幾何體的足夠性能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM