Разве вы не можете просто изменить аргументы x / y / z для функции glDrawTex, чтобы преобразовать текстуру в нужное вам положение?
Но если вы хотите повернуть текстуру, просто нарисуйте текстурированный квад, используя два треугольника. Это очень просто Предполагая, что у вас OpenGL ES версии 1.1:
const float v[] = {
0, 0, 0, 0,
0, 128, 0, 1,
128, 0, 1, 0,
128, 128, 1, 1,
};
glBindTexture(GL_TEXTURE_2D, texId);
glEnable(GL_TEXTURE_2D);
glTexCoordPointer(2, GL_FLOAT, 4*4, &v[2]);
glVertexPointer(2, GL_FLOAT, 4*4, &v[0]);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glEnableClientState(GL_VERTEX_ARRAY);
glDrawArrays( GL_TRIANGLE_STRIP, 0, 4);
(я предполагаю, что вы рисуете с использованием ортографической проекции, а 128 - это размер текстуры)
Таким образом, положение текстуры можно изменить, используя матрицу просмотра модели. Также матрицу texure можно использовать для изменения способа нанесения текстуры на треугольники.