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

Moteurs 3D Discussion :

Repère direct ou indirect


Sujet :

Moteurs 3D

  1. #1
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut Repère direct ou indirect
    Salut,

    Je me rappelle l'avoir lu quelque part, mais je ne me souviens plus où, donc peut-être que quelqu'un s'en rappelle.
    En 3D, est-ce qu'on utilise un repère direct ou un repère indirect, de manière générale ?

  2. #2
    Expert éminent
    Avatar de raptor70
    Inscrit en
    Septembre 2005
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3 173
    Points : 6 812
    Points
    6 812
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Salut,

    Je me rappelle l'avoir lu quelque part, mais je ne me souviens plus où, donc peut-être que quelqu'un s'en rappelle.
    En 3D, est-ce qu'on utilise un repère direct ou un repère indirect, de manière générale ?
    Généralement, on utilise un repère "main droite" (je ne sais plus si c'est direct ou indirecte ) .. c'est a dire :
    X : axe horizontale, positif vers la droite
    Y : axe vertical, positif vers le haut
    Z : axe de profondeur, positif derrière nous .
    Mes Tutos DirectX, OpenGL, 3D : http://raptor.developpez.com/

  3. #3
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    C'est bien ce que je me disais (main droite = direct, il me semble aussi). Merci !

    En fait, c'est pour bien être sûr que mon raytracer fonctionne bien avec la bonne norme (pour le moment, j'ai y qui descend et z qui "rentre" dans l'écran, faut que j'inverse les 2 )

    Ah oui, ça pourrait être bien de mettre ça dans la FAQ 3D ?

  4. #4
    Membre expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Points : 3 266
    Points
    3 266
    Par défaut
    Salut,

    Il n'y a pas de standard, mais il y a 2 standard (désolé du calembour miteu, je suis déjà loin ):
    * OpenGL: main droite comme l'a décrit raptor70
    * Direct3D: main gauche, +Z est devant nous
    Sur d'autres soft comme Max, c'est le repère main gauche qui est utilisé.

    Par contre aucune idée pour direct/indirect, c'est la première fois que je vois ce terme

  5. #5
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Zut, c'est embêtant, ça... Tu es sûr que 3DS utilise le repère indirect/main gauche ? En méca, on nous disais toujours de prendre le direct car c'est le résultat du produit vectoriel

  6. #6
    Membre expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Points : 3 266
    Points
    3 266
    Par défaut
    Bon, après vérif, j'ai la mémoire corrompue
    * 3DSMax : +Z est la hauteur, la profondeur (devant nous) est indiquée par +Y
    * Maya: comme OpenGL, ie +Z est vers l'observateur
    * Blender: idem à Maya/OpenGL
    * Softimage|XSI: idem à Maya/OpenGL
    * Renderman: +Z s'éloigne de l'observateur (DirectX, main gauche)

  7. #7
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    On a tous la mémoire corrompue quand on n'a pas les applications devant les yeux
    Merci pour les compléments (qui rejoignent ceux que tu m'avais fait par MP il y a qqs temps, c'est une des raisons de cette question, en fait )

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 366
    Points : 440
    Points
    440
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    En méca, on nous disais toujours de prendre le direct car c'est le résultat du produit vectoriel

    De memoire (corrompue elle aussi ?), quand tu fais un produit vectoriel, les deux vecteurs operandes forment un plan. Le resultat de l operation est un vecteur dont la direction est perpendiculaire au plan....

    ... et pour le sens , ca depend justement du repere (direct / indirecte) qui sera choisi.... donc a mon avis c'est pas la bonne raison de choisir directe en meca

  9. #9
    Expert éminent
    Avatar de raptor70
    Inscrit en
    Septembre 2005
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3 173
    Points : 6 812
    Points
    6 812
    Par défaut
    Oui, effectivement, comme te l'as dit Irmatden, il n'y absolument aucun standard, celui que je t'ai donné est le plus utilisé ...
    Mes Tutos DirectX, OpenGL, 3D : http://raptor.developpez.com/

  10. #10
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Citation Envoyé par smashy Voir le message
    ... et pour le sens , ca depend justement du repere (direct / indirecte) qui sera choisi.... donc a mon avis c'est pas la bonne raison de choisir directe en meca
    Si tu fais x * y = z, le repère (x, y, z) est direct.

  11. #11
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Autre question. Dans une scène OpenGL, on place donc les objets avec un z négatif si on veut les voir au départ (Sérieux, va falloir que je me remettre à OpenGL, il fut un temps où j'arrivais à répondr eà une telle question de débutant ) ?

  12. #12
    Expert éminent
    Avatar de raptor70
    Inscrit en
    Septembre 2005
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3 173
    Points : 6 812
    Points
    6 812
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Autre question. Dans une scène OpenGL, on place donc les objets avec un z négatif si on veut les voir au départ (Sérieux, va falloir que je me remettre à OpenGL, il fut un temps où j'arrivais à répondr eà une telle question de débutant ) ?
    Oui et non ... tout dépend de la facon dont tu place ta caméra.. (gluLookAt() )
    Mes Tutos DirectX, OpenGL, 3D : http://raptor.developpez.com/

  13. #13
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Question bête de ma part...

  14. #14
    Expert éminent
    Avatar de raptor70
    Inscrit en
    Septembre 2005
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3 173
    Points : 6 812
    Points
    6 812
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Question bête de ma part...
    Mais non .. mais pour répondre plus précisement, je crois que la position initiale de la caméra est (0;0;0) ... et qu'elle regarde vers les Z négatif.. à vérifier..
    Mes Tutos DirectX, OpenGL, 3D : http://raptor.developpez.com/

  15. #15
    Membre expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Points : 3 266
    Points
    3 266
    Par défaut
    C'est ça

  16. #16
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    OK, merci pour le renseignement. Je vais donc partir du même principe, à savoir regarder vers les z négatifs afin de minimiser les sources de conflits si les gens veulent tester ma bibliothèque par la suite.

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

Discussions similaires

  1. Déplacement circulaire ( sens direct ou indirect)
    Par arko974 dans le forum Mathématiques
    Réponses: 2
    Dernier message: 28/08/2009, 13h53
  2. Direct Graphics
    Par Blustuff dans le forum DirectX
    Réponses: 9
    Dernier message: 28/10/2002, 04h19
  3. Hors série PCTEAM sur Direct 3D
    Par Shakram dans le forum DirectX
    Réponses: 1
    Dernier message: 12/10/2002, 16h34
  4. La communauté Direct X est au repos?
    Par Shakram dans le forum DirectX
    Réponses: 21
    Dernier message: 18/07/2002, 23h32
  5. URGENT : Zoom et changement de repère
    Par poca10 dans le forum MFC
    Réponses: 5
    Dernier message: 28/05/2002, 13h32

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