Texture texture = loadTexture("main_menu/bg");
texture.bind();
glBegin(GL_QUADS);
glTexCoord2f(0, 0);
glVertex2i(1, 1);
glTexCoord2f(0, 1);
glVertex2i(1, 720);
glTexCoord2f(1, 1);
glVertex2i(1280, 720);
glTexCoord2f(1, 0);
glVertex2i(1280, 1);
glEnd();
J'utilise la bibliothèque LWJGL avec slick2D. Je rends des textures avec le dessus, mais les textures ont une position incorrecte. J'ai 1280x720 plein écran fenêtre et je rends la texture d'arrière-plan sur la fenêtre, mais la texture est réduite à l'axe X à 2/3 de la fenêtre et à l'axe Y à 3/4 de la fenêtre.OpenGL taille de texture incorrecte
J'ajoute la configuration de openGL, donc la voici:
WINDOW_WIDTH = 1280;
WINDOW_HEIGHT = 720;
glEnable(GL_TEXTURE_2D);
glDisable(GL_DEPTH_TEST);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0, WINDOW_WIDTH, WINDOW_HEIGHT, 0, -1, 1);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glViewport(0, 0, WINDOW_WIDTH, WINDOW_HEIGHT);
Et voici la méthode des textures de chargement:
private Texture loadTexture(String key) {
try {
return TextureLoader.getTexture("PNG", new FileInputStream(
new File("res/" + key + ".png")));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
Si vous n'utilisez pas 2 textures lorsqu'elles ne sont pas supportées, la texture devient blanche, cela n'a rien à voir avec la taille à l'écran. – Kevin