Partage
  • Partager sur Facebook
  • Partager sur Twitter

[JOGL] Rotation d'un texture sur une face

Je suis un peu perdu.

    19 août 2009 à 10:26:02

    Salut, alors j'ai fait une fonction pour faire tourner une texture, elle marche mais le problème en est que toutes les faces ayant la même texture bah la texture tourne aussi hors que je veux qu'elle tourne que sur la face sélectionnée, quelqu'un a-t-il une idée, merci.

    Voici le code :
    public static void switchTexture (GL gl) {
    		
    		int[] pixels = new int[128 * 128];
    		IntBuffer ib = IntBuffer.allocate(128 * 128);
    		gl.glBindTexture(GL.GL_TEXTURE_2D, textures[idTextureToSwitch]);
    		gl.glGetTexImage(GL.GL_TEXTURE_2D, 0, GL.GL_RGBA, GL.GL_UNSIGNED_BYTE, ib);
    		
    		pixels = ib.array();
    		int[] pixels2 = new int[128 * 128];
    		for (int i = 0; i < 128; i++) {
    			for (int j = 0; j < 128; j++) {
    				pixels2[j * 128 + i] = pixels[i * 128 + j];				
    			}
    		}
    		ib = IntBuffer.wrap(pixels2);
    		
    		gl.glTexSubImage2D(GL.GL_TEXTURE_2D, 0, 0, 0, 128, 128, GL.GL_RGBA, GL.GL_UNSIGNED_BYTE, ib);		
    		
    		textureChanged = false;
    	}
    


    Halala ces fameuses textures.

    Erf je crois que je vais devoir recréer une nouvelle texture pour chaque face qui auront la textures tournée, vu que glTexSubimage2D me modifie la texture pour tout les objets qui ont cette texture, ou alors, j'ai peut être une meilleure idée pour pas encombrer inutilement la mémoire, changer l'ordre de plaquage de la texture ?
    Du coup je n'aurai même plus besoin de faire de rotation.

    Pour le filtrage je pense que autant le faire avec GIMP si il faut à chaque fois recréer un nouvelle objet openGL pour chaque textures modifiée sinon elle se modifie sur tout les objets qui ont l'id de cette texture, ce que je trouves pas pratique du tout.
    • Partager sur Facebook
    • Partager sur Twitter

    [JOGL] Rotation d'un texture sur une face

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown