Message #10587
Sujet: S'accroupir Irrlicht
| Type | Date | Auteur | Contenu |
|---|---|---|---|
| Dernière modification | 03-07-2012 20:12:56 | johnplayer |
Comme le nom de la fonction l'indique, elle sert à faire translater l'animateur de collision. Si tu changes la valeur de Y dans setEllipsoidTranslation( vector3df(X, Y, Z) ), tu vas faire "coulisser" la collision selon Y et donc ta camera se lèvera ou s'abaissera en conséquence. Maintenant, je n'ai pas essayé donc je ne peux te le garantir mais je pense que ça marchera correctement.
Pour mieux expliquer : Tu prends setEllipsoidRadius(vector3df(30, 20, 30)). Si tu as : setEllipsoidTranslation( vector3df(0, 0, 0) ) ton node camera est à 30 du sol (EllipsoidRadius : X et Z donne la hauteur et Y le tour du personnage) maintenant si tu as : setEllipsoidTranslation( vector3df(0, -50, 0) ) ton node camera est à 30 + 50 du sol car tu as translater de 50 vers le bas ta collision qui a elle-même un rayon de 30 donc ton node est maintenant à 80 du sol. En fait quand tu décales ta collision ta caméra n'est plus au centre de la collision donc faire aussi attention au comportement. D'ailleurs utilise plutôt setEllipsoidRadius et tu modifies X et Z en même temps et avec les mêmes valeurs pour modifier la hauteur de collision. D'ailleurs faut aussi prévoir une fonction pour le remettre debout ton joueur^^. |
| Création du message | 03-07-2012 20:07:28 | johnplayer |
Comme le nom de la fonction l'indique, elle sert à faire translater l'animateur de collision. Si tu changes la valeur de Y dans setEllipsoidTranslation( vector3df(X, Y, Z) ), tu vas faire "coulisser" la collision selon Y et donc ta camera se lèvera ou s'abaissera en conséquence. Maintenant, je n'ai pas essayé donc je ne peux te le garantir mais je pense que ça marchera correctement.
Pour mieux expliquer : Tu prends setEllipsoidRadius(vector3df(30, 20, 30)). Si tu as : setEllipsoidTranslation( vector3df(0, 0, 0) ) ton node camera est à 30 du sol (EllipsoidRadius : X et Z donne la hauteur et Y le tour du personnage) maintenant si tu as : setEllipsoidTranslation( vector3df(0, -50, 0) ) ton node camera est à 30 + 50 du sol car tu as translater de 50 vers le bas ta collision qui a elle-même un rayon de 30 donc ton node est maintenant à 80 du sol. En fait quand tu décales ta collision ta caméra n'est plus au centre de la collision donc faire aussi attention au comportement. D'ailleurs utilise plutôt setEllipsoidRadius et tu modifies X et Z en même temps et avec les mêmes valeurs pour modifier la hauteur de collision. D'ailleurs faut aussi prévoir une fonction pour le remettre debout ton joueur^^. |
| Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
|---|---|---|---|---|
|
Préférences cookies Corrections |
![]() ![]() ![]() ![]() |
Propulsé par Django xhtml 1.0 css 2.1 |
884 membres 1440 sujets 11337 messages |
Dernier membre inscrit: Saidov17 558 invités en ligne membre en ligne: - RSS Feed |