Pages: 1
Salut
Est il possible de déplacer un objet 3D non pas par rapport aux coordonnée de l'univers mais par rapport à ses propres coordonnées ?
merci
++
Hors ligne
Heuu, comprend pas trop ta question. Genre une instruction 'TranslateEntity( x,y,z )' ?
que lon pourait coder un peu comma ça: mesh->setPosition( mesh->getPosition() + core::vector3df(x,y,z)); ?
Sinon, développe un peu
Hors ligne
Les objets 3D ont leur propre coordonnée qui sont indépendante de l'univers.
Ouvre un logiciel 3D genre Maya ou max. L'univers a ses coordonnées et les objets ont les leurs qui sont indépendante de l'univers. Je te donne un exemple. J'ai un personnage, j'oriente ses coordonnés de tel sorte que l'axe des +Z parte devant lui (et donc l'axe des -Z derriere lui, +X sur le coté droit, -X sur le coté gauche dpnc).
Et bien au lieu de déplacer avec les coordonnés de l'univers, j'utilise ses propres coordonnées. Par exemple pour le faire avancer je le fait un translate +1 en Z et il ira toujours devant lui meme si je tourne l'objet dans tous les sens. Pour le faire reculer un translate de -1 en Z. Un pas de coté a droite, un translate de +1 en X. Dans Virtools on a la possibilité de faire cela. De choisir les coordonnées de l'univers, de l'objet ou meme d'un autre objet comme référence...
Hors ligne
Je comprends mieux ce que tu veux dire, merci des précisions. Ce genre de façon de faire ne pourrait-elle pas être en partie
simulé par une node qui serait l'univers, et tous les mesh hériterais de ce node parent, ce qui permettrait une manipulation de
l'univer lui-même (le node parent), ou des mesh aux même a travers des instructions normales de manipulation ?
Hors ligne
par une node qui serait l'univers
Comment tu fais pour placer l'univers dans un node ?
tous les mesh hériterais de ce node parent
Ben je vois pas comment les mesh (qui sont les maillage des objets) peuvent hériter de coordonné.
ce qui permettrait une manipulation de
l'univer lui-même (le node parent), ou des mesh aux même a travers des instructions normales de manipulation ?
On ne m'anipule pas l'univers lui meme (enfin a priori) il reste inchangé. Seul les coordonnée de l'objet peuvent etre modifier il me semble.
Hors ligne
Dragonblood :
Comment tu fais pour placer l'univers dans un node ?
Dragonblood :
Ben je vois pas comment les mesh (qui sont les maillage des objets) peuvent hériter de coordonné.
Pas dur, il suffit de définir un node parent (comme le RootSceneNode), parent de tous lesmesh, c'est un des grand principes de base de
manipulation des mesh sous Irrlicht.
Petit rappel ici:http://www.portail-irrlicht.fr/wiki/ind … c:irrNodes
Dragonblood :
On ne m'anipule pas l'univers lui meme (enfin a priori) il reste inchangé. Seul les coordonnée de l'objet peuvent etre modifier il me semble.
Alors, j'avoue que certains aspect m'échappe, moi qui pensais avoir plutôt bien compris
Hors ligne
Pas dur, il suffit de définir un node parent (comme le RootSceneNode), parent de tous lesmesh, c'est un des grand principes de base de
manipulation des mesh sous Irrlicht.
Petit rappel ici:http://www.portail-irrlicht.fr/wiki/ind … c:irrNodes
Ben le scenegraphe contient deja les coordonné de l'univers.
Ben en fait tout ce que tu fais SetPosition Set Rotation SetScale c'est par rapport à l'univers déja. Donc par défaut c'est deja comme ca. Mais moi je veux transformer l'objet par rapport a ses propres coordonné par pas rapport à l'univers mais il semble que ce soit pas possible.
Alors, j'avoue que certains aspect m'échappe, moi qui pensais avoir plutôt bien compris hmm
L'univers tu le modifie pas c'est l'objet qui est modifié par rapport à l'univers.
Dernière modification par Dragonblood (14-12-2008 20:42:24)
Hors ligne
Dragonblood :
Ben le scenegraphe contient deja les coordonné de l'univers.
Je voulais juste dire que tu pouvais créer en quelque sorte ton propre rootSceneNode, et en changer les coordonnées ou les valeurs
de rotation ( comme un changement de repère en quelque sorte), le phénomène se répercutant de lui même sur tous les mesh
faisant partie de cet environnement. Dans certains cas, c'est très pratique..
Après pour obtenir le changement de comportement que tu souhaite pour simuler ce dont tu parlais plus haut, il faut écrire tes propres
instructions de modification d'attitude
Hors ligne
Je voulais juste dire que tu pouvais créer en quelque sorte ton propre rootSceneNode, et en changer les coordonnées ou les valeurs
de rotation ( comme un changement de repère en quelque sorte), le phénomène se répercutant de lui même sur tous les mesh
faisant partie de cet environnement. Dans certains cas, c'est très pratique..
Ben ca restera toujours des transformations du rootsceneNode par rapport à l'univers et pareil pour ses enfants.
Attention je crois que tu confonds avec les coordonnées relatives et absolues. C'a n'est pas la meme chose...
Dernière modification par Dragonblood (14-12-2008 21:06:54)
Hors ligne
Dragonblood :
Attention je crois que tu confonds avec les coordonnées relatives et absolues...
non, pas du tout, j'essais juste de me situer par rapport à ta question initiale.
Hors ligne
Pages: 1