【发布时间】:2012-05-12 23:10:49
【问题描述】:
我正在使用 LWJGL 和 Slick 框架将纹理加载到我的 OpenGL 应用程序。
我正在使用这张图片:
以及导入和使用纹理的这段代码:
flagTexture = TextureLoader.getTexture("PNG", ResourceLoader.getResourceAsStream("japan.png"));
......
flagTexture.bind();
GL11.glColor3f(1.0f, 1.0f, 1.0f);
GL11.glPushMatrix();
GL11.glTranslatef(0.0f, 0.0f, -10.0f);
GL11.glBegin(GL11.GL_QUADS);
GL11.glTexCoord2f(0.0f, 0.0f);
GL11.glVertex2f(0.0f, 0.0f);
GL11.glTexCoord2f(1.0f, 0.0f);
GL11.glVertex2f(2.5f, 0.0f);
GL11.glTexCoord2f(1.0f, 1.0f);
GL11.glVertex2f(2.5f, 2.5f);
GL11.glTexCoord2f(0.0f, 1.0f);
GL11.glVertex2f(0.0f, 2.5f);
GL11.glEnd();
GL11.glPopMatrix();
但最终结果变成了这样:
我没有使用任何特殊设置,例如 GL_REPEAT 或类似的设置。这是怎么回事?如何使纹理填充给定的顶点?
【问题讨论】:
标签: java opengl graphics textures lwjgl