Я могу найти руководства по отображению текстур в полигоны с указанием вершин и т.д., но ничего не касается того, как применять текстуру к кубу (или другому материалу), нарисованному с помощью перегибов (glutSolidCube).
Я делаю что-то вроде:
glTexEnvfv(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, decal);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, repeat);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, repeat);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, nearest);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, nearest);
glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
glTexImage2D(GL_TEXTURE_2D, 0, 4, myImageWidth, myImageHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, (GLvoid *)myImage);
//...
glEnable(GL_TEXTURE_2D);
//now draw the cube
glutSolidCube(N);
Выполняя это, я получаю текстуру, применимую к кубу, но весь куб получает цвет первого байта в текстуре!
Есть ли способ сопоставления текстуры с твердым кубом (и другими твердыми веществами) при использовании glutSolidCube?