我有一个关于如何通过glUniform1i设置纹理的问题。我看过下面的代码。

glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, texture0);
glUniform1i(_textureUniform, 0);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, texture1);
glUniform1i(_textureUniform, 1);

这是否意味着,如果我在i中使用数字glUniform1i,那么我必须使用glActiveTexture(GL_TEXTURE **i** )吗?

最佳答案

是的,你是对的。采样器的统一值是指纹理单位,而不是纹理id。

关于opengl - 通过glUniform1i设置纹理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9661878/

10-09 00:26