Я пытаюсь выучить привязки JOGL. Уроки, похоже, устарели, поэтому я всегда стараюсь собрать воедино то, что действительно из каждого.
У меня возникают проблемы при попытке применить простую текстуру к квадратной плоскости.
У меня есть изображение размером 204 X 204, называемое box.png.
В моем init () я делаю следующее, чтобы загрузить текстуру:
try {
InputStream stream = getClass().getResourceAsStream("box.png");
TextureData data = TextureIO.newTextureData(gl.getGLProfile(),
stream, 100, 200, false, "png");
boxTexture = TextureIO.newTexture(data);
} catch (IOException exc) {
exc.printStackTrace();
System.exit(1);
}
Затем я пытаюсь применить мою текстуру, выполнив следующие действия на моем дисплее ():
gl.glEnable(GL.GL_TEXTURE_2D);
boxTexture.enable(gl);
boxTexture.bind(gl);
gl.glBegin(GL2.GL_QUADS);
// Front Face
gl.glTexCoord2f(0.0f, 0.0f);
gl.glVertex3f(-1.0f, -1.0f, 1.0f); // Bottom Left Of The Texture and Quad
gl.glTexCoord2f(1.0f, 0.0f);
gl.glVertex3f(1.0f, -1.0f, 1.0f); // Bottom Right Of The Texture and Quad
gl.glTexCoord2f(1.0f, 1.0f);
gl.glVertex3f(1.0f, 1.0f, 1.0f); // Top Right Of The Texture and Quad
gl.glTexCoord2f(0.0f, 1.0f);
gl.glVertex3f(-1.0f, 1.0f, 1.0f);
gl.glEnd();
Есть ли какие-то проблемы, которые могли бы объяснить, почему я терплю неудачу?