Author Topic: Object3D MOVEIN?  (Read 1458 times)

Offline Schwapp

  • byte
  • *
  • Posts: 11
    • View Profile
Object3D MOVEIN?
« on: August 19, 2011, 07:42:56 pm »
Hallo!
Hab' gerade den GermanCorner entdeckt :-)
Ich hoffe es stört niemanden, dass ich in so kurzer Zeit so viele Fragen habe...
Ich frage mich jetzt z.B. gerade, wie ich es schaffen kann, ein Object3D wie die Camera einfach in Blickrichtung zu bewegen.
Ich habe mir schon eine "fliegende" Kamera erstellt, die man mit den W,A,S,D - Tasten durch die Welt steuert und mit der Maus die Richtung bestimmt..
Dazu gibt es ja netterweise
Code: [Select]
moveCamera(Camera.CAMERA_MOVEIN, 1);
Das gibt es beim Object3D nicht, dass kann ich nur bewegen, indem ich es an der X (Y,Z) - Achse versetze...
Wenn man nun aber W drückt um nach vorne zu gelangen, hängt das ja von der Blickrichtung der Kamera ab...
Ich habe wirklich schon viel herumprobiert und nach den richtigen Methoden gesucht, es ist aber noch nichts brauchbares dabei herausgekommen...
Ich habe es vor recht langer Zeit mal mit der JMonkeyEngine geschafft, ist aber schon recht lange her...
Weiß jemand Rat?

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11748
    • View Profile
    • http://www.jpct.net
Re: Object3D MOVEIN?
« Reply #1 on: August 19, 2011, 09:45:05 pm »
Versuch mal obj.translate(camera.getDirection());

Offline Schwapp

  • byte
  • *
  • Posts: 11
    • View Profile
Re: Object3D MOVEIN?
« Reply #2 on: August 20, 2011, 01:34:16 pm »
Alles klar, vorwärts bewege ich mit:
Code: [Select]
character.translate(cam.getDirection());
rückwärts:
Code: [Select]
character.translate(-cam.getDirection().x,-cam.getDirection().y,-cam.getDirection().z);
nach links:
Code: [Select]
character.translate(-cam.getDirection().z,cam.getDirection().y,cam.getDirection().x);
nach rechts:
Code: [Select]
character.translate(cam.getDirection().z,cam.getDirection().y,-cam.getDirection().x);
Danke für die Hilfe!