Ziel :
Das Ziel dieses Beitrags ist es, den Unterschied zwischen Update und FixedUpdate unity Funktion zu verstehen, und ihre Verwendung.
Update :
- Update wird einmal pro Frame aufgerufen, also wenn das Spiel mit 24 fps läuft, dann wird dies 24 mal in einer Sekunde aufgerufen.
- Wie wir wissen, läuft das Spiel aus verschiedenen Gründen nie mit konstanter Framerate, so dass Update nicht regelmäßig aufgerufen wird, was bedeutet, dass die Zeit zwischen den Update-Aufrufen unterschiedlich sein kann.
Verwendung:
- Update wird für das Bewegen von Nicht-Physik-Objekten verwendet.
- Update wird für den Empfang von Input verwendet.
- Update wird für einfache Timer verwendet.
Fixed Update:
- Wie der Name schon sagt, wird dies nach einer festen Zeitdauer aufgerufen, so dass die Zeitdauer zwischen zwei aufeinanderfolgenden Aufrufen immer gleich ist, im Gegensatz zu Update, wo diese variieren kann.
Verwendung :
- Dies wird üblicherweise für physikalische Aufgaben verwendet, wie z.B. das Anwenden von Kraft auf einen Starrkörper.
Lassen Sie uns dies in einem Beispiel sehen
Erstellen Sie ein neues C# Skript und fügen Sie diesen Code ein, hängen Sie es an Ihre Hauptkamera an und sehen Sie sich die Logs im Konsolenfenster an
public class Update_FixedUpdate_Log : MonoBehaviour { void Update () { Debug.Log("Update is called after time : "+Time.deltaTime); } void FixedUpdate() { Debug.Log("Fixed Update is called after time : "+Time.deltaTime); }}
es wird so aussehen