Kamera immer die selbe Höhe haben lassen, trotz dynamischer Steuerung in Unity?
Ich möchte mit Unity 3D, c# eine Steuerung programmieren, bei der der Spieler von oben auf die Welt schaut, dabei immer auf einer Höhe bleibt und den Blickwinkel ändern kann, wie man es etwa von Anno oder Cities Skylines kennt.
Ich weiß zwar, wie ich die Kamera meiner Maus folgen lassen kann, doch wenn ich nach unten schaue, bewegt sie sich auf den Boden zu.
Ich weiß auch, wie ich eine Kamera an den globalen Koordinaten bewegen kann, allerdings soll sich die Kamera in die Richtung bewegen, wo ich hinsehe (außer nach oben/unten).
Ich bräuchte also eine Steuerung, wo WASD der lokalen Koordinatenachsen folgt, die y Höhe aber immer gleich bleibt.
Danke im voraus
2 Antworten
Schau mal auf YouTube das Brackeys Tutorial zu 3rd Person view an, vielleicht hilft das ja.
Ich hatte mal ein Video über Target Camera's gemacht. Das panning kannst du ja auf WASD legen umschreiben. Und auch sonst Funktionen anpassen, wie du sie brauchst.
https://www.youtube.com/watch?v=3B3UbYdHbmk
In englischer Sprache!
In meinem Tutorial bewegt man die Kamera bzw. Das Hauptobjekt mit der Maus. Und dies nur auf der X und der Z Achse. Die Y Achse hat nichts damit zu tun. Dies kannst du auch mit Button inputs machen Stichwort Input.GetAxisRaw. Wenn das Movement relativ zur Cam falsch ist, liegt es an der Blickrichtung der Cam die dann mit einkalkuliert werden muss.
Vielen Dank, das Tutorial hat mir sehr geholfen.
allerdings schaffe ich es mit allen mir bekannten Möglichkeiten, ein Objekt zu bewegen nicht, die Kamera mit WASD so (wie oben beschrieben) zu bewegen, ohne dass sich die y-Höhe verändert.
dazu hast du nicht auch zufällig ein Tutorial/Tipps? ^^