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 :

Quads ou Triangle_strip ?


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 61
    Par défaut Quads ou Triangle_strip ?
    Bonjour,

    Je débute en Opengl et je suis en train de faire ma première application.
    J'ai deux questions :

    Je dois dessiner un cube, je crée donc 6 faces à l'aide de glDrawElements(GL_QUADS, ...). Est-il plus rapide/efficace de le faire avec des GL_TRIANGLE_STRIP en modifiant mon tableau d'indices ? Car si j'ai bien compris au final tout est découpé en triangles.

    Sinon pour un autre cube, qui a certains moments doit se déplacer (une porte qui s'ouvre). Actuellement je le fait bouger avec un glTranslatef, mais je me demande si ce ne serait pas mieux de modifier les coordonnées des sommets ?

    Merci pour votre aide.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 399
    Par défaut
    Bonjour,

    pour les strips le probleme est qu un cube peut avoir des couleurs / coordonnées de textures, normales qui diffèrent d'une face a l'autre donc pas possible de passer en strip. Ensuite entre quads et triangles, il y a peux de différences de performances et ca va être dépendant de l'implémentation. Disons que des quads vont être parfois plus faciles a manipuler car moins de données alors que des triangles vont être plus flexibles et standard (et compatible avec Direct3D qui n'a pas de quads).

    Pour ta seconde questions, il vaut mieux utiliser une transformation que de transformer tout les sommets a la main. Le GPU réalisera les transformations beaucoup plus rapidement que le CPU.
    SPARK
    Moteur de particule C++ opensource avec modules de rendu OpenGL, Irrlicht et SFML

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 61
    Par défaut
    Merci pour ta réponse : donc exit les triangle_strip, mais pourquoi pas des triangles ? Je me posais cette question car il me semblait avoir compris qu'en interne openGL gérait tout avec des triangles. Donc dans ce cas, autant lui fournir le tout en triangle plutôt qu'en quad qui vont être divisé en deux triangles tant que j'en ai la possibilité.

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


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

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 151
    Billets dans le blog
    150
    Par défaut
    Bonjour,

    Il ne faut pas oublié un quad = deux triangles.

    Pour l'histoire des quads, je trouve que la réponse de Frifron est satisfaisante. Les quads, peuvent être plus facile à utiliser. Et puis ... après niveau performance ... je ne pense pas que cela se fasse trop ressentir.
    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.

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


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

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 151
    Billets dans le blog
    150
    Par défaut
    Pour information, dans OpenGL ES ( qui est OpenGL mais en version light pour les systèmes embarqué ( téléphone portable / iphone ), il n'y a pas le GL_QUADS.
    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.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 128
    Par défaut
    GL_QUADS est également déprécié en OpenGL 3.2

Discussions similaires

  1. Réponses: 12
    Dernier message: 07/08/2006, 09h30
  2. Réponses: 4
    Dernier message: 20/03/2006, 21h26
  3. Réponses: 5
    Dernier message: 20/02/2006, 17h49
  4. Probleme avec la position d'un simple quad 2d.
    Par Happy dans le forum OpenGL
    Réponses: 4
    Dernier message: 06/11/2005, 00h32

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