J'ai cherché toute la soirée, mais je ne trouve pas l'information que je cherche, ou même si c'est possible, ce qui est assez pénible;)Java3D: objet tournant dans les coordonnées du monde?
J'utilise Java3D et je n'arrive pas à comprendre comment faire pivoter la caméra dans l'espace du monde.
Ma rotation gauche/droite et haut/bas se produisent tous deux dans l'espace local. Cela signifie que si je me déplace à gauche et à droite, tout va bien. Cependant, si je regarde 90 degrés vers le bas, alors regarder 90 degrés à droite, tout semble être de son côté.
Actuellement, je suis en train de faire ce qui suit. Cela se traduira par les effets ci-dessus:
TransformGroup cam = universe.getViewingPlatform().getViewPlatformTransform();
Transform3D trfcam = new Transform3D();
cam.getTransform(trfcam);
trfcam.mul(Camera.GetT3D()); //Gets a Transform3D containing how far to rotate left/right and how far to move left/right/forward/back
trfcam.mul(Camera.GetRot()); //Gets a t3d containing how far to rotate up/down
cam.setTransform(trfcam);
Alternativement, une chose que j'ai essayé tournait la racine, mais qui tourne autour de 0, donc si je me déplace jamais la caméra loin de 0, il va mal. Y a-t-il quelque chose sur le web qui pourrait me dire comment réaliser ce genre de chose? J'ai essayé beaucoup de choses différentes, mais je n'arrive pas du tout à comprendre. Je suis familier avec le concept, comme je l'ai réalisé dans Ogre3D, tout simplement pas familier avec la loi de la terre dans J3D.
Merci à l'avance pour les réponses :)