好的,这是我的问题。我在学校使用的可视化框架中尝试设置3D图形,但框架目前仅使用固定功能管线进行绘制。因此,在不破坏现有代码的情况下,我一直在尝试解决旧代码的问题,并建立设施以允许创建着色器和着色器程序。我已经编译了一个简单的颜色着色器,并且也制作了一个测试顶点数组(一个绿色三角形)。
现在当我试图渲染它时,屏幕变成了黑色。在之前,有很多2D精灵和其他物体在屏幕上移动,但是通过逐步执行我添加到渲染函数中的代码,我发现一旦调用glUseProgram,屏幕就会变黑。如果我注释掉glUseProgram和设置uniforms以及绘制部分,一切正常工作。glUseProgram会禁用固定功能管线吗?如果是这样,是否有任何方式可以重新激活它?
现在当我试图渲染它时,屏幕变成了黑色。在之前,有很多2D精灵和其他物体在屏幕上移动,但是通过逐步执行我添加到渲染函数中的代码,我发现一旦调用glUseProgram,屏幕就会变黑。如果我注释掉glUseProgram和设置uniforms以及绘制部分,一切正常工作。glUseProgram会禁用固定功能管线吗?如果是这样,是否有任何方式可以重新激活它?