Jump to content
Unity Insider Forum
Sign in to follow this  
wueschn

In Z-Richtung bewegen

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

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×