Menu
CoddyTech

Bewege ihn in jedem Frame

Teil des Abschnitts Unity-Scripting: Grundlagen der Unity-Journey von Coddy. Lektion 10 von 85.

Unity ruft Update() für jeden gezeichneten Frame einmal auf. Ändere darin die Position ein wenig, und das Objekt bewegt sich bei jedem Frame ein wenig, was auf dem Bildschirm wie eine flüssige Bewegung aussieht.

+= zu einer Position addiert einen Vector3: x, y und z wachsen jeweils um die entsprechende Zahl. Dieser Ballon steigt bei jedem Frame um 0.02 Einheiten und bleibt auf x und z, wo er ist:

void Update()
{
    transform.position += new Vector3(0, 0.02f, 0);
}

Das f ist das C#-Float-Suffix, das du bereits kennst: Unity arbeitet mit float, und 0.02 allein wäre ein double. Bei 60 Frames pro Sekunde steigt der Ballon jede Sekunde um 0.02 x 60 = 1.2 Einheiten.

challenge icon

Aufgabe

Einfach

Lass das rote Auto vorwärtsfahren.

  1. Füge in Update() mit += new Vector3(0, 0, 0.05f) zu transform.position hinzu.
  2. Lass x und y bei 0: Das Auto bewegt sich nur entlang der z-Achse.

Drücke „Spielen“: Das Auto fährt von der Kamera weg. Drücke dann „Prüfen“.

Probier es selbst

using UnityEngine;

public class CarMover : MonoBehaviour
{
    void Update()
    {
        // Bewege das Auto hier entlang der z-Achse vorwärts
    }
}

Alle Lektionen in Unity-Scripting: Grundlagen

Übe selbstständig: Unity-Playground