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

Développement 2D, 3D et Jeux Discussion :

OpengGL Problème de Blending sur des arbres


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 7
    Points : 9
    Points
    9
    Par défaut OpengGL Problème de Blending sur des arbres
    Bonjour,

    J'ai un petit soucis de blending comme vous pouvez le voir ci-dessous sur le screenshot. J'ai de l'alpha test ainsi que de l'Alpha Blending.

    glEnable (GL_ALPHA_TEST);
    glAlphaFunc (GL_GREATER,.1f);

    glEnable (GL_BLEND);
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);


    Si je désactive le test de profondeur glDepthMask (FALSE), je n'ai plus le soucis, mais je me retrouve avec des arbres qui apparaissent en premier plan alors qu'il sont bien derrière ect ...

    Y' at'il un principe en shader bien connu pour ne plus avoir ce problème de blending sans trier les polygones ?

    Dois-je extraire le DEPHTBUFFER dans une texture pour faire un test au préalable ? Si vous avez un tuyaux je suis preneur.

    Merci d'avance.



  2. #2
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 7
    Points : 9
    Points
    9
    Par défaut
    J'ai trouvé une réponse ici.

    http://docs.unity3d.com/Documentatio...AlphaTest.html

    Desinner
    - Une fois avec AlphaTest
    - Une fois avec Alpha blending.

    Voici un extrait du text
    When rendering plants and trees, many games have the hard edges typical of alpha testing. A way around that is to render the object twice. In the first pass, we use alpha testing to only render pixels that are more than 50% opaque. In the second pass, we alpha-blend the graphic in the parts that were cut away, without recording the depth of the pixel. We might get a bit of confusion as further away branches overwrite the nearby ones, but in practice, that is hard to see as leaves have a lot of visual detail in them.


    Ça fait deux passes.

    Si vous avez mieux je suis preneur.

    Samuel

  3. #3
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 577
    Points
    218 577
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Vous pouvez aussi essayer de dessiner les objets au plus loin, en premier, puis les objets au plus près (de la camera). C'est d'ailleurs pour cela que vous avez les arbres du fond qui ressorte en désactivant le test de profondeur, car vous dessinez les objets au loin, en dernier (ou du moins, après les objets au près).
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 7
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par LittleWhite Voir le message
    Bonjour,

    Vous pouvez aussi essayer de dessiner les objets au plus loin, en premier, puis les objets au plus près (de la camera). C'est d'ailleurs pour cela que vous avez les arbres du fond qui ressorte en désactivant le test de profondeur, car vous dessinez les objets au loin, en dernier (ou du moins, après les objets au près).
    Merci de votre réponse,

    Oui effectivement en désactivant le test de profondeur c'est pour cette raison que certains arbres apparaissent devant.

    Mais le fait de dessiner du plus loin au plus prés ceci implique que je devrais trier les polygones mais je n'y tiens pas trop car je souhaiterai éviter de perdre de la performance au niveau du CPU.

Discussions similaires

  1. Réponses: 16
    Dernier message: 15/05/2006, 14h49
  2. [XSD] Problème d'order sur des noeuds dans un schema
    Par jesus144 dans le forum Valider
    Réponses: 2
    Dernier message: 13/04/2006, 15h59
  3. [MySQL] Problème de requête sur des dates
    Par dahu29 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 14/03/2006, 13h08
  4. Problème d'id sur des sous formulaires.
    Par antier dans le forum Access
    Réponses: 4
    Dernier message: 07/01/2006, 16h53
  5. Problème de *pointeur sur des char
    Par Spartan03 dans le forum C++
    Réponses: 2
    Dernier message: 18/09/2005, 14h20

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