Jump to content
Unity Insider Forum

In Z-Richtung bewegen


wueschn

Recommended Posts

Werte Expertinnen und Experten

Wie kann ich festlegen, dass ich durch Drücken der Leertaste ein GameObject in die Z-Richtung bewegen kann?

Bewegung in die X- und Y-Richtung funktioniert bei mir mit

public void MyMoving()
    {
        //GetAxis-Variablen erstellen
        float xController = Input.GetAxis("Horizontal");
        float yController = Input.GetAxis("Vertical");
        //neue Position bestimmten
        float xNeu = myTransform.position.x + (xController * speed * Time.deltaTime);
        float yNeu = myTransform.position.y + (yController * speed * Time.deltaTime);
        //neue Position ausführen
        myTransform.position = new Vector3(xNeu, yNeu, 0);

    }

Vielen Dank vorab

wueschn

Link zu diesem Kommentar
Auf anderen Seiten teilen

Im Endeffekt ist das nicht viel anders als das, was du jetzt schon hast.
Du kannst jetzt entweder "hardcoded"  explizit die Leertaste abfragen

float zNeu;
if(Input.GetKey(KeyCode.Space){
  zNeu=1f;
}
else{
  zNeu=0f;
}
 

oder aber du gehst in den Inputmanager und definierst dir eine neue Achse, die dann einfach nur einen Positivwert hat.

https://docs.unity3d.com/Manual/class-InputManager.html

Die Achse nennst du z.B. Lateral und stellst alle Werte so ein wie sie auch bei Horizontal oder Vertikal zu finden sind. Ja und dann trägst du eben Space beim PostivButton ein.

Diese Achse kannst du danach genauso nutzen wie Horizontal oder Vertical
 

float zController = Input.GetAxis("Lateral");

Dann noch schnell zNeu definieren und unten bei transform.position in Vector3 mit einfügen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...