IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenGL Discussion :

JOGL et problème au chargement des textures


Sujet :

OpenGL

  1. #1
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut JOGL et problème au chargement des textures
    Bonjour

    Je veux utilise glBind pour appliquer mes textures.
    Or, je me heurte à un petit problème avec jogl 1.1.1 rc7.
    Voici le code la méthode qui plante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    private void prepareTextures(GL gl){
            gl.glPixelStorei(GL.GL_UNPACK_ALIGNMENT, 1);
            gl.glGenTextures(textures_number, texName, 0);
            for(int i=0; i<textures_number; i++){
                readTexture(i);
                gl.glBindTexture(GL.GL_TEXTURE_2D, texName[i]);
                gl.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_WRAP_S, GL.GL_CLAMP);
                gl.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_WRAP_T, GL.GL_CLAMP);
                gl.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_MAG_FILTER,
                        GL.GL_NEAREST);
                gl.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_MIN_FILTER,
                        GL.GL_NEAREST);
                gl.glTexImage2D(GL.GL_TEXTURE_2D, 0, GL.GL_RGBA, textures[i].getWidth(),
                        textures[i].getHeight(), 0, GL.GL_RGBA, GL.GL_UNSIGNED_BYTE,
                        texture_data[i].getBuffer());
            }
            gl.glEnable(GL.GL_TEXTURE_2D);
        }
    Or, à l'appel de glTexImage2D, j'ai l'exception suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    java.lang.IndexOutOfBoundsException: Required 16384 remaining bytes in buffer, only had 12288

    Là, je ne vois pas trop comment faire. Si quelqu'un a une solution, il est le bienvenue.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  2. #2
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    16384 / 4 = 4096
    4096 * 3 = 12288
    tu lui passe une texture RGB en lui disant que c'est une texture RGBA, donc il s'attend à avoir 4 composantes par pixel. Il faut changer le premier paramètre GL_RGB (ou le second, je ne sais plus, mais tu n'est pas obligé de le faire pour les deux si tu veut une composante alpha dans la texture finale)
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  3. #3
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Bonjour bafman

    Merci, c'est nickel comme ça

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de chargement des cubes Olap
    Par CoGnos8 dans le forum Cognos
    Réponses: 1
    Dernier message: 11/05/2008, 01h01
  2. OpenGL: problème pour incorporer des textures
    Par milena dans le forum OpenGL
    Réponses: 5
    Dernier message: 23/03/2008, 17h16
  3. Problème avec chargement des animations
    Par PomDesign dans le forum Flash
    Réponses: 2
    Dernier message: 02/04/2007, 16h52
  4. problème de taille des textures
    Par darkdindon dans le forum Moteurs 3D
    Réponses: 4
    Dernier message: 29/01/2007, 10h47
  5. [Security] Probléme de chargement des bean ??
    Par linniesurf dans le forum Spring
    Réponses: 1
    Dernier message: 03/07/2006, 17h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo