#0 

04-06-2008 11:53:53

littleben
Membre
Date d'inscription: 14-04-2008
Messages: 97

Bonjour.


J'ai deux questions :

-J'ai un objet (drone) qui contient une camera FPS. Lorsque cet objet fait une rotation sur lui-même selon l'axe X ou Y, la        camera FPS suit le mouvement et fait une la même rotation (normal quoi!). Par contre, j'ai vu que la classe de la camera FPS ne tient pas compte des rotations sur l'axe Z, par conséquent, même en faisant :

Camera1->setRotation (vector3df (0,0,n)) ;    ...... ça ne marche pas et ma camera ne fait pas la rotation sur l'axe Z.

Est-ce qu'il faut que je créé ma propre classe camera FPS ou y a-t-il une solution plus rapide ?


-J'ai installé une autre caméra de base (CameraSceneNode). En fait, celle-ci suit l'objet drone en permanence : à chaque boucle, je fais :

Camera2->setTarget(Drone->getPosition()).

Jusque là ça va pas de soucis. Simplement, cette caméra est associée à un objet humain (qui représente le pilote du drone télécommandé). Je souhaite lui attribué la même rotation que sa caméra ( car sa camera effectue des rotations selon les mouvements du drone). J'ai donc essayé ceci :

Pilote->setRotation (Camera2->getRotation()) ;   ....... sans effet, car Camera2->getRotation() renvoie toujours 0,

ce qui est surement du à la méthode setTarget() utilisée ci-dessus.

Par conséquent, est-ce que quelqu'un a une idée pour contourner ce problème, car j'en ai marre de ma taper tous ces calculs mathématiques ?


Merci.

Hors ligne


#1 

04-06-2008 13:48:28

firnafin
Abonné
Date d'inscription: 31-03-2007
Messages: 150

Pour ce qui est de la rotation selon Z tu peux la faire avec "setUpVector".
Pour ce qui est de "camera2->getRotation" tu peux utilisé getTarget pour avoir les angles selon Xet Y et get UpVector pour la rotation selon Z.
Mais sinon il vaut mieu se faire un classe perso car elle repondra a tes attentes qui semblent relativement précises .

Hors ligne


#2 

04-06-2008 14:05:21

littleben
Membre
Date d'inscription: 14-04-2008
Messages: 97

Pour ce qui est de ma deuxième question, j'ai trouvé comment faire entre temps. Mais merci quand. J'ai simplement modifié une erreur de calcul de ma part (parfois il faut prendre du recul pour mieux voir les choses).

Sinon pour la question 1, je vais essayer ce que tu m'a dit. Je te mes au courant. Merci.

Hors ligne


#3 

04-06-2008 14:35:37

littleben
Membre
Date d'inscription: 14-04-2008
Messages: 97

Merci ça marche. C'était vraiment une bonne idée. Par contre, ça déforme un peut l'image. C'est dommage. Mais bon on fera avec. Encore Merci.

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
883 membres
1429 sujets
11121 messages
Dernier membre inscrit: Saidov17
108 invités en ligne
Aucun membre connecté
RSS Feed