我正在尝试使用Golang OpenGL bindings
来设计一个简单的三角形该库并未声明对tesselation着色器的支持,但我查看了源代码,添加正确的绑定似乎并不十分棘手。所以我branched it并在adding中尝试gl_defs.go正确的常量。
绑定仍然编译得很好,我的程序也是如此,当我实际尝试使用新的绑定时,事情变得奇怪了。每当我真正尝试包含tesselation着色器时,程序就从显示一个漂亮的盘旋三角形变为黑色屏幕。
我正在跟随OpenGL Superbible(第6版)并使用它们的着色器进行此项目,所以我没有想象我正在使用破碎的着色器(他们不会吐出错误日志,无论如何)。但是如果着色器本身可能有问题,可以在setupProgram()
函数here中找到它们。
我很确定我的显卡支持细分,因为打印openGL版本会返回4.4.0 NVIDIA 331.38
。
所以我的问题:
是否有任何理由添加针对tesselation的绑定不起作用?绑定看起来非常简单。 我是否错误地添加了新绑定?
如果它起作用,为什么它对我不起作用? 我在这里做错了什么?
答案 0 :(得分:1)
可能值得采取的步骤:
glGetString(GL_VERSION)
,看看你得到了什么。glGetError
并实际检查其值?此绑定是否提供错误返回值?如果是的话,你在检查那些吗?