Historique des modifications - Message

Message #5795

Sujet: Faire avancer un node selon sa rotation


Type Date Auteur Contenu
Création du message 19-01-2009 14:17:10 johnplayer
Je ne suis pas expert en programmation (autodidacte) donc je te donne ce bout de code sans etre sur qu'il sera correct.
// avec node, le noeud à avancer
vector3df direction = node->getRotation()->rotationToDirection(vector3df(X,Y,Z));
/** XYZ à l'air de représenter la direction que l'on veut :
vector3df (0,0,1) montre l'avant du node (avancer)
vector3df (0,0,-1) montre l'arriere du node (reculer)
vector3df (1,0,0) montre la droite du node (marcher en crabe vers la droite)
vector3df (-1,0,0) montre la gauche du node (marcher en crabe vers la gauche)
vector3df (0,1,0) montre le dessus du node
vector3df (0,-1,0) montre le dessous du node
les 4 premiers vecteurs permettent de gérer une camera de type FPS
**/
// maintenant, direction ne prends pas encore en compte la position du node dans le monde. On poursuit donc :
/** si on fait :
direction += node->getPosition();
direction est alors egal au getTarget() d'une camera si vector3df(X,Y,Z) = vector3df(0,0,1) qui montre l'avant
**/
// si l'on veut avancer de plusieurs unités on fait :
node->setPosition(node->getPosition() + n*direction); // avec n le nombre d'unités dont on veut avancer

J'espère que le code est bon et que ça résoudra ton problème. Si jamais ça marche ou s'il y a quelques moifs à faire fais en part car j'en aurais aussi besoin par la suite et certainement d'autres personnes seront intéressées.

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
155 invités en ligne
membre en ligne: -
RSS Feed