我试着用Golang OpenGL绑定画一个简单的三角形
库没有声称支持tesselation着色器,但是我查看了源代码,添加正确的绑定看起来并不是很棘手。因此,我分叉并尝试添加正确的常数在defs.go中。
绑定仍然编译得很好,我的程序也是如此,当我尝试使用新绑定时,事情变得很奇怪。该程序从显示一个很好的旋转三角形到一个黑色屏幕,每当我实际尝试包括镶嵌着色器。
我跟随的OpenGL超级圣经(第6版)和使用他们的着色器为这个项目,所以我不想象我使用的是破损的着色器(他们不会吐出一个错误日志,无论如何)。但是,如果着色器本身有问题,则可以在setupProgram()函数这里中找到它们。
我很确定我的显卡支持tesselation,因为打印openGL版本会返回4.4.0 NVIDIA 331.38。
所以我的问题:
是否有任何理由为tesselation添加go绑定不起作用?这些绑定看起来很简单。我是不是添加了新的绑定错误?
如果应该起作用,为什么对我不起作用呢?我在这里做错什么了?
发布于 2014-01-23 20:30:56
可能值得采取的步骤:
glGetString(GL_VERSION),看看你得到了什么。glGetError并实际检查它的值?此绑定是否提供错误返回值?如果是的话,你在检查这些吗?https://stackoverflow.com/questions/21218290
复制相似问题