Die mehrfachen Implementierungsmethoden des Unity Game of the Unity Game
Einführung
Einfügen oder Pause in das Spiel kann die Interaktion und den Rhythmus des Spiels verbessern. In der Einheit kann eine Vielzahl von Technologien verwendet werden, um dies zu erreichen.
<.> 1.Unternehmen
am direktesten ist die Verwendung von WaitForSeconds
Coroutine. Dadurch wird die Ausführung der angegebenen Dauer der Coroutine ausgesetzt. Zum Beispiel:
Diese Coroutine verteilt den Text mit einer Verzögerung von 3 Sekunden zwischen Zuordnung an Sie WaitForSeconds
.
<code class="language-C#">IEnumerator Waiter() { TextUI.text = "欢迎来到数字巫师!"; yield return new WaitForSeconds(3); TextUI.text = ("你选择的最高数字是 " + max); yield return new WaitForSeconds(3); TextUI.text = ("你选择的最低数字是 " + min); }</code>
korporate TextUI
Ähnlich wie wird auch suspendiert, ignoriert jedoch die Zeit -Sharing (z. B. für langsame Aktionseffekte). WaitForSecondsRealtime
WaitForSeconds
WaitForSecondsRealtime
<code class="language-C#">IEnumerator Waiter() { TextUI.text = "欢迎来到数字巫师!"; yield return new WaitForSecondsRealtime(3); TextUI.text = ("你选择的最高数字是 " + max); yield return new WaitForSecondsRealtime(3); TextUI.text = ("你选择的最低数字是 " + min); }</code>
<.> 4. Time.deltaTime
Funktion
Diese Funktion führt die Coroutine aus, bis sie den angegebenen Bedingungen erfüllt. Warten Sie beispielsweise darauf, dass der Spielerwert den Zielwert erreicht:
<code class="language-C#">float counter = 0; float waitTime = 3; bool quit = false; void Update() { if (!quit) { counter += Time.deltaTime; } if (!quit && counter >= waitTime) { // 等待时间已过时执行代码 counter = 0; } }</code>
<.> 5. Funktion WaitUntil
<code class="language-C#">IEnumerator Waiter() { float targetScore = 100; yield return new WaitUntil(() => playerScore >= targetScore); // 加载下一关或执行所需操作 }</code>
Funktion WaitWhile
Dies arrangiert eine Funktion, die nach der Verzögerung aufgerufen werden soll. Füttern Sie zum Beispiel den Hund nach 5 Sekunden:
WaitUntil
<.> 7.
<code class="language-C#">IEnumerator Waiter() { yield return new WaitWhile(() => Input.GetKey(KeyCode.Escape)); // 退出或执行所需操作 }</code>
Invoke
Ähnlich wie die Optionen 3, aber in der Funktion den Zustand:
Lösung für Ihre Probleme
<code class="language-C#">Invoke("feedDog", 5f); void feedDog() { Debug.Log("正在喂狗"); }</code>
, um eine Verzögerung in Ihrem spezifischen Code zu erreichen: Update()
Time.deltaTime
Verwenden Sie die
. Update()
Das obige ist der detaillierte Inhalt vonWie implementieren Sie Spielpausen in Einheit mit verschiedenen Methoden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!