Ich versuche, eine einfache Steuerung für meine Kamera in Unity zu implementieren. Erfolgreich reagiere ich auf gedrücktes w, a, s, d und bewege die Kamera. Ich möchte auch eine Drehung implementieren (später Drehung mit der Maus, aber zuerst eine Drehung mit den Tasten e und q). Ich habe dieses Skript geschrieben, um meine Kamera zu aktualisieren, aber das Problem: Wenn Sie umdrehen, funktioniert der Update-Prozess für meine Schlüssel w, a, s und d nicht richtig. F. e. Ich möchte nach links gehen, aber ich gehe nach rechts. Ich habe keine Ahnung, wie ich dieses Problem lösen kann. Kann mir jemand eine Idee geben? Hier ist mein Quellcode. Ich hoffe du verstehst was mein Problem ist.Unity 5 Kontrolle über wasd mit Rotation
float translation_v = -(Input.GetAxis ("Vertical")) * 4.0F * Time.deltaTime;
camera.transform.position += new Vector3 (0, 0, translation_v);
float translation_h = -(Input.GetAxis ("Horizontal")) * 4.0F * Time.deltaTime;
camera.transform.position += new Vector3 (translation_h, 0, 0);
float rotation = -(Input.GetAxis ("Rotate_Player")) * 4.0F * Time.deltaTime * 10F;
camera.transform.Rotate(new Vector3(0F, rotation, 0F));
Vector3 pos = camera.transform.position;
pos.y = terrain.GetComponent<Terrain>().SampleHeight(camera.transform.position)+1;
camera.transform.position = pos;
So akzeptieren Sie Antworten auf SO http://i.stack.imgur.com/uqJeW.png Versuchen Sie es bei zwei Ihrer anderen Fragen. Ich garantiere Ihnen, dass es funktioniert. Wenn Sie damit fertig sind, antworten Sie mir und ich zeige Ihnen, warum Ihr Code nicht funktioniert. Sonst, viel Glück. – Programmer