【发布时间】:2011-04-10 23:25:21
【问题描述】:
目前我正在使用
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]
【问题讨论】:
-
请向我们展示更多代码。到目前为止,我只能做出假设,现在我猜你正在尝试获得一个没有着色器限制的统一位置,这很可能会给你一个错误。
标签: opengl glsl shader fragment-shader vertex-shader