我正在渲染一個棋盤,使用2種不同的紋理。一個用於黑色方塊,一個用於白色方塊。然而,不是每個不同的正方形都擁有自己的紋理,它們都採用最後一個我稱爲glBindTexture(GL_TEXTURE_2D, id);
的紋理。我使用glBindTexture有什麼問題?
這是我的方法:
glEnable(GL_TEXTURE_2D);
glBegin(GL_QUADS);
// square 0, 0 (front left)
glBindTexture(GL_TEXTURE_2D, textureBlackSquare->texID);
glNormal3f(0, 1, 0);
glTexCoord2f(0, 0); glVertex3f(-8.0, 0.5, 8.0);
glTexCoord2f(1, 0); glVertex3f(-6.0, 0.5, 8.0);
glTexCoord2f(1, 1); glVertex3f(-6.0, 0.5, 6.0);
glTexCoord2f(0, 1); glVertex3f(-8.0, 0.5, 6.0);
glEnd();
glBegin(GL_QUADS);
// square 1, 0
glBindTexture(GL_TEXTURE_2D, textureWhiteSquare->texID);
glTexCoord2f(0, 0); glVertex3f(-6.0, 0.5, 8.0);
glTexCoord2f(1, 0); glVertex3f(-4.0, 0.5, 8.0);
glTexCoord2f(1, 1); glVertex3f(-4.0, 0.5, 6.0);
glTexCoord2f(0, 1); glVertex3f(-6.0, 0.5, 6.0);
glEnd();
當我運行這段代碼,無論四邊形有白色紋理約束。我如何讓每個四元組擁有自己的紋理?
請詳細說明您的問題標題。目前沒有其他人會認識到你的問題,這是一個_community_不是一次性支持網站。 –
我再次抱歉,我不確定要爲我的標題放什麼,我希望我的問題是一個簡單的解決方案,可以用一兩句話來解釋。當你不確定問題出在哪裏時,很難預測問題的範圍。 – mikestaub