我总是只画一个纹理,选择0纹理单位
glActiveTexture(GL_TEXTURE0);
选择另一个纹理单元的标准是什么?
我的意思是:如果我必须使用多个纹理,我应该选择哪个单元?我是一个openGL的初学者,我想知道我是否可以在所有的图形纹理中使用相同的0纹理单位。有多少个纹理单元?如果有N个纹理单位,我最多可以使用N个纹理吗?
'纹理单元的数量取决于实现,但必须至少为两个。'
参见:glActiveTexture Docs
在调用glActiveTexture()之后,您可以使用glBindTextures()绑定纹理。可以将多个纹理绑定到同一个单元。但只对其中一个进行了采样。
参见:纹理绑定
因此,如果你有N个纹理单位,你最多可以在一个着色器中采样N个纹理。