Der Aufgabenplaner koordiniert Aufgaben, die in jedem Frame ausgeführt werden, als das Spiel läuft, auch wenn das Spiel angehalten wird. Diese Aufgaben umfassen die Erkennung der Eingabe des Spielers, das Animieren von Charaktern, das Aktualisieren der Physiksimulation und das Wiederaufnahmen von Skripten in einem wait()-Zustand.
Während mehrere Aufgaben ausgeführt werden können, kann der Aufgabenplaner möglicherweise überlastet sein, insbesondere in den folgenden Situationen:
- Verwenden Sie ein benutzerdefiniertes Charakter-Rig oder einen Eingabenschema.
- Animationen Sie Teile selbst (statt ein Animator zu verwenden).
- Abhängig von der genauen Physik.
- Objekte regelmäßig replizieren.
Rahmen
Ein Rahmen ist eine Einheit der Spiellogik, in der die Arbeit erledigt wird. Jeder Rahmen sollte Aufgaben effizient ausführen, was zu mehr Rahmen pro Sekunde und einer glättenden Erlebnisführt.
RunService
Der direkte Weg, um Spielaufgaben durch Rahmen-by-Rahmen-Spiele zu ergänzen, ist durch die folgenden Mitglieder von RunService :
Scheduler-Priorität
Der Aufgabenplaner kategorisiert und schließt Aufgaben in der folgenden Reihenfolge ab. Einige Aufgaben können keine Arbeit in einem Frame ausführen, während andere mehrere Mal ausgeführt werden können.
Best Practices
Um effiziente, leistungsstarke Spiele aufzubauen, beachten Sie gefolgte Profile:
Verbinden/Binden Sie Funktionen nicht mit dem Rendern, es sei denn, es ist absolut notwendig. Nur Aufgaben, die nach dem Eingeben, aber vor dem Rendern, getan werden müssen, sollten in dieser Weise, wie Kamerabewegung, ausgeführt werden, wie Kamerabewegung. Für eine strengere Kontrolle verwenden Sie BindToRenderStep() anstelle von Class.
Minimize the amount of waiting scripts. Vermeiden Sie die Verwendung von while wait() do end oder while true