1

現在使用しています

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]

4

1 に答える 1

1

location実際のcurrentTimeユニフォームはシェーダーで使用されなかったため、あなたは-1です。

于 2011-04-10T12:26:09.573 に答える