我正在开发一个使用OpenGL ES 2进行绘图的iPhone应用程序。 我知道通常纹理坐标是在0-1范围内定义的,但是为了便于阅读,理想情况下我想从0-1023(我的TextureAtlas的大小)映射它们。 我已经看到了以这种方式定义坐标的示例代码,但是还没有能够列出之前做过的调用。 glMatrixMode(GL_TEXTURE)
似乎可能涉及到,但我不太清楚如何实现它。
我的最终目标是完成这样的事情,在图集里我将使用的纹理是在左上angular的48px square:
GLshort texcoords[]={ 48,48, 0,48, 48,0, 0,0, }; glVertexAttribPointer(ATTRIB_TEXTUREPOSITON, 2, GL_SHORT, 0, 0, texcoords); glEnableVertexAttribArray(ATTRIB_TEXTUREPOSITON);