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 :

GLSL et mipmapping


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 46
    Par défaut GLSL et mipmapping
    Bonjour j'ai cherché sur internet mais n'ai rien trouvé... Je voudrais utiliser les mipmaps dans mon shader, j'ai bien passé les différents niveaux à l'aide de glTex[Sub]Image2D mais apparemment OpenGL ne prend pas le bon mipmap automatiquement et me retourne toujours ce qui est contenu dans le niveau 0...

  2. #2
    Membre chevronné
    Inscrit en
    Février 2008
    Messages
    413
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2008
    Messages : 413
    Par défaut
    Salut,

    a priori, si tes mipMaps sont bien générés (personnellement je le fais automatiquement avec gluBuild2DMipMaps()), il te suffit de passer le niveau de mipmap désiré lors de l'appel de texture2D() dans ton shader, comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vec4 texColor= texture2D(stampTex, gl_TexCoord[0].st, mipMapLevel);
    avec mipMapLevel = 0, tu auras ta texture normale, puis plus mipMapLevel augmente plus elle sera floue.

    Pour être sûr que tes mipMaps sont bien génerés, essaie en mode "fixe" (sans shaders) en changeant le niveau de mipMap avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, mipMapLevel);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 46
    Par défaut
    Bon, en fait le problème n'était pas tout a fait ça. Il fallait que je règle les propriétés suivantes sur ma texture :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR_MIPMAP_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, n_mipmaps); //Ici par défaut la valeur est de 1000, causant un bug apparemment...
    Le GL_TEXTURE_MAX_LEVEL permet de définir le nombre de mipmaps, c'était ça qui me manquait...

    Mais merci quand même car je ne savait pas qu'il était possible de choisir le mipmap soit-même

  4. #4
    Membre chevronné
    Inscrit en
    Février 2008
    Messages
    413
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2008
    Messages : 413
    Par défaut
    Mais merci quand même car je ne savait pas qu'il était possible de choisir le mipmap soit-même
    De rien, c pratique par exemple pour utiliser la carte graphique pour generer des textures floues automatiquement plutôt que de le recalculer sois-même ou de le faire dans un shader.

    Content que ca marche!

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

Discussions similaires

  1. Debugger du glsl
    Par nodar3 dans le forum OpenGL
    Réponses: 8
    Dernier message: 03/02/2006, 11h12
  2. Hyperion : moteur 3D XML / Lua / GLSL
    Par Laurent Gomila dans le forum Moteurs 3D
    Réponses: 1
    Dernier message: 31/01/2006, 19h25
  3. [GLSL,Cg,....] C'est quoi une CubeMap ?? ;:|
    Par cyber_N dans le forum OpenGL
    Réponses: 5
    Dernier message: 25/01/2006, 09h53
  4. GLSL
    Par dickymoe dans le forum OpenGL
    Réponses: 5
    Dernier message: 20/12/2005, 10h13
  5. Ogre et GLSL
    Par wikers dans le forum OpenGL
    Réponses: 1
    Dernier message: 04/03/2005, 14h11

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