我有一个问题,通过使用统一到我的顶点着色器从C++传递一个浮点数。这个浮动只是为了不断增加自己。通过统一浮点数到顶点着色器opengl
在我的头,我有
float pauto;
void pautoupdate(int program);
现在我的CPP
void World::pautoupdate(int program)
{
pauto += 0.1f;
glUniform1f(glGetUniformLocation(program, "pauto"), pauto);
}
中在我的顶点着色器被声明为和它只是增加X值
uniform float pauto;
terrx = Position.x;
terrx += pauto;
从这里开始,我没有得到任何结果,我不确定我是否错误地poi nting它或某物。
目前还不清楚这是否会发生,因为您只显示一小部分代码。但请记住,'glUniform *()'在活动程序上设置值。所以你需要在'glUniform *()'之前调用'glUseProgram()'。 –