着色器与pygtkglext

时间:2009-12-12 14:45:06

标签: python pygtk glsl shader

有人知道如何让glsl着色器在gtk-opengl窗口中工作吗?有了所有glCreateProgram等功能,但当我试图将相同的gl代码放入pygtkglext窗口时,它抱怨NullReference:

OpenGL.error.NullFunctionError: Attempt to call an undefined function glCreateProgram, check for bool(glCreateProgram) before calling

那么我from OpenGL.GL.ARB.shader_objects import *,但结果是相似的:

OpenGL.error.NullFunctionError: Attempt to call an undefined function glCreateProgramObjectARB, check for bool(glCreateProgramObjectARB) before calling

任何想法都会有用。

2 个答案:

答案 0 :(得分:1)

答案是它尚未得到支持。只是pygtkglext没有设置glCreateProgram。但是git版本可以。

答案 1 :(得分:0)

使用GetProcAddress例程获取OpenGL入口点。我想NULL指针是函数指针glCreateProgramObjectARB。

这与使用驱动程序安装的库严格相关。哪个OpenGL版本在主机上运行?也许驱动程序没有实现glCreateProgramObjectARB。