目前我正在使用
glUseProgramObjectARB(ProgramObject);
和
glUseProgramObjectARB(0);
但它没有正确切换回来,并沿着这些行给我一个“无效操作glError”
void updateAnim_withShader()
{
int location;
location = getUniLoc(ProgramObject, "currentTime");
ParticleTime += 0.002f;
if (ParticleTime > 15.0)
ParticleTime = 0.0;
glUniform1fARB(location, ParticleTime);
printOpenGLError();
}
正确/正确的方法是什么(启用/禁用着色器)?
[我的代码文件(删除了临时链接)] [1]
答案 0 :(得分:1)
您的location
为-1,因为在着色器中未使用实际的currentTime
制服。