ホームページ >バックエンド開発 >C++ >さまざまな方法を使用して、ゲームの一時停止を統一して実装する方法は?

さまざまな方法を使用して、ゲームの一時停止を統一して実装する方法は?

DDD
DDDオリジナル
2025-01-31 13:22:11434ブラウズ

How to Implement Game Pauses in Unity Using Different Methods?

unityゲームのUnityゲームの複数の実装方法

はじめに

ゲームに挿入または一時停止すると、ゲームの相互作用とリズムが強化される可能性があります。 Unityでは、これを達成するためにさまざまなテクノロジーを使用できます。 1。

最も直接的な方法は、

coroutineを使用することです。これにより、Coroutine指定された期間の実行が停止されます。たとえば、

このコルーチンは、課題の間に3秒の遅延があるテキストをあなたに分配します。 WaitForSeconds 2。

Corporate に類似している、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>

3 TextUI各フレームの値を比較して、その値をターゲット値と比較することで、遅延を作成することもできます。これにより、動的な待機時間が可能になり、中断することができます。

WaitForSecondsRealtimeこの関数は、指定された条件を満たすまでCoroutineを実行します。たとえば、プレーヤースコアが目標値に達するのを待ちます:

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>
6。

これにより、遅延後に呼び出される関数が配置されます。たとえば、5秒後に犬に餌を与えます: Time.deltaTime 7。

オプション3に似ていますが、

関数では、条件を確認してください。

あなたの問題に対する
<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>
解決策

特定のコードの遅延を達成するには、WaitUntil

<code class="language-C#">IEnumerator Waiter()
{
    float targetScore = 100;
    yield return new WaitUntil(() => playerScore >= targetScore);
    // 加载下一关或执行所需操作
}</code>
または

関数でCoroutineを呼び出します。

以上がさまざまな方法を使用して、ゲームの一時停止を統一して実装する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。