被施加在OpenGL中我一直理解glEnable(GL_TEXTURE_1D)
,glEnable(GL_TEXTURE_2D)
和/或glEnable(GL_TEXTURE_3D)
(和相應的glDisable
)是每紋理單元參數。是否應glEnable(GL_TEXTURE_2D)每紋理單元
最近我試圖證實這一點,但沒有找到任何明確的文件證實這個問題的任何方式。
簡單地說,並在代碼中,我應該這樣做
glActiveTexture(GL_TEXTURE0);
glEnable(GL_TEXTURE_2D);
... bind etc ...
glActiveTexture(GL_TEXTURE1);
glEnable(GL_TEXTURE_2D);
... bind etc ...
或本
glEnable(GL_TEXTURE_2D);
glActiveTexture(GL_TEXTURE0);
... bind etc ...
glActiveTexture(GL_TEXTURE1);
.... bind etc ...
我希望能找到一些清晰度。
嗯,實際上,它不會在最新的核心修訂版本中,因爲固定功能已被棄用,然後被刪除,而Enable則控制着固定功能狀態。它對着色器沒有任何影響。 – Bahbar 2010-10-28 18:40:26
很高興知道! – Montdidier 2010-10-29 00:42:54
@Bahbar:你的意思是GLSL着色器的註釋可以控制紋理單元和採樣器的狀態,因此不需要明確的glEnable(GL_TEXTURE2D)例如? – Montdidier 2010-10-29 00:44:35