0

我总是只画一个纹理选择 0 纹理单元

glActiveTexture(GL_TEXTURE0);

选择另一个纹理单元的标准是什么?

我的意思是:如果我必须使用多个纹理,我应该选择哪个单元?我是 openGL 的初学者,我想知道是否可以为我的所有图形纹理使用相同的 0 纹理单元。有多少个纹​​理单元?如果有 N 个纹理单元,我可以使用最多 N 个纹理吗?

4

1 回答 1

1

“纹理单元的数量取决于实现,但必须至少为两个。”

参见:glActiveTexture 文档

在 glActiveTexture() 调用之后,您使用 glBindTexture() 绑定纹理。您可以将多个纹理绑定到同一个单元。但只有其中一个被采样。

请参阅:纹理绑定

因此,如果您有 N 个纹理单元,您最多可以在一个着色器中采样 N 个纹理。

于 2012-07-17T11:27:33.673 回答