我正在用 Opengl 编写一个 2D 游戏。我已经设置了正交投影,因此我可以很容易地知道四边形将在屏幕上的哪个位置结束。问题是,我还希望能够将像素直接映射到纹理坐标,所以我还对纹理应用了正交变换(使用 gluOrtho2d)。现在我可以直接使用整数和 glTexCoord2i 映射像素。问题是,在谷歌搜索/阅读/询问之后,我发现没有人真正知道(显然)glTexCoord2i 的行为,但它在我使用的方式上工作得很好。我编写的一些示例测试代码如下:
glBegin(GL_QUADS);
glTexCoord2i(16,0);
glVertex2f(X, Y);
glTexCoord2i(16,16);
glVertex2f(X, Y+32);
glTexCoord2i(32, 16);
glVertex2f(X+32, Y+32);
glTexCoord2i(32, 0);
glVertex2f(X+32, Y);
glEnd();
那么,我正在做的事情有什么问题吗,或者我正在做的事情是否正确?