Координаты текстуры OpenGL в пиксельном пространстве

Я работаю над приложением для iPhone, которое использует OpenGL ES 2. Я знаю, что обычно координаты текстуры определяются в диапазоне от 0 до 1, но в идеале я хотел бы сопоставить их от 0 до 1023 (размер моего TextureAtlas) для удобства чтения. Я видел образец код, который определяет координаты таким образом, но не смог выяснить, какие предыдущие вызовы были сделаны, которые позволяли это. glMatrixMode (GL_TEXTURE) кажется, что он может быть задействован, но я ' m не совсем уверен, как это реализовать.

Моей конечной целью было бы добиться чего-то вроде этого, где текстура, которую я буду использовать в атласе, находится в верхнем левом квадрате 48 пикселей:

GLshort texcoords[]={
  48,48,
  0,48,
  48,0,
  0,0,
};
glVertexAttribPointer(ATTRIB_TEXTUREPOSITON, 2, GL_SHORT, 0, 0, texcoords);
glEnableVertexAttribArray(ATTRIB_TEXTUREPOSITON);
15
задан genpfault 4 May 2011 в 15:29
поделиться