Я пытаюсь текстурировать кубоид в устаревшем OpenGL.Независимо от того, какую сторону кубоида я рендерил первым, эта сторона не текстурирована правильно там, где все остальные стороны текстурированы правильно.Сначала я попытался отрисовать разные стороны куба.
Это код, который рисует куб, включая его координаты текстуры:
void Objects::cuboidTextured(float width, float height, float depth, float xpos, float ypos, float zpos, float r, float g, float b){
glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glTranslatef(xpos, ypos, zpos);
glColor3f(r, g, b);
glBegin(GL_QUADS);
glVertex3f( width, -height, depth );
glTexCoord2f(1,0);
glVertex3f( width, height, depth );
glTexCoord2f(1,1);
glVertex3f( -width, height, depth );
glTexCoord2f(0,1);
glVertex3f( -width, -height, depth );
glTexCoord2f(0,0);
glEnd();
glBegin(GL_QUADS);
glVertex3f( width, -height, -depth );
glTexCoord2f(1,0);
glVertex3f( width, height, -depth );
glTexCoord2f(1,1);
glVertex3f( width, height, depth );
glTexCoord2f(0,1);
glVertex3f( width, -height, depth );
glTexCoord2f(0,0);
glEnd();
glBegin(GL_QUADS);
glVertex3f( -width, -height, depth );
glTexCoord2f(1,0);
glVertex3f( -width, height, depth );
glTexCoord2f(1,1);
glVertex3f( -width, height, -depth );
glTexCoord2f(0,1);
glVertex3f( -width, -height, -depth );
glTexCoord2f(0,0);
glEnd();
glBegin(GL_QUADS);
glVertex3f( width, height, depth );
glTexCoord2f(1,0);
glVertex3f( width, height, -depth );
glTexCoord2f(1,1);
glVertex3f( -width, height, -depth );
glTexCoord2f(0,1);
glVertex3f( -width, height, depth );
glTexCoord2f(0,0);
glEnd();
glBegin(GL_QUADS);
glVertex3f( width, -height, -depth );
glTexCoord2f(0,1);
glVertex3f( width, -height, depth );
glTexCoord2f(0,0);
glVertex3f( -width, -height, depth );
glTexCoord2f(1,1);
glVertex3f( -width, -height, -depth );
glTexCoord2f(1,0);
glEnd();
glBegin(GL_QUADS);
glVertex3f( -width, -height, -depth);
glTexCoord2f(1,0);
glVertex3f( -width, height, -depth);
glTexCoord2f(1,1);
glVertex3f( width, height, -depth);
glTexCoord2f(0,1);
glVertex3f( width, -height, -depth);
glTexCoord2f(0,0);
glEnd();
glPopMatrix();
}