Unity C#

Что такое WaitForSeconds в Unity C#

Метод WaitForSeconds в Unity создаёт паузы в выполнении кода. Он особенно полезен, когда нужно приостановить выполнение корутины на заданное число секунд.

Особенности

  • Работает только внутри корутин — в Update или Start его не использовать.
  • Время измеряется в реальных секундах, даже если игра тормозит из-за низкого FPS.
  • Подходит для задержек в эффектах, таймерах и анимациях.

Метод разбивает длинные действия на шаги с паузами между ними — удобно для последовательной анимации объектов или воспроизведения эффектов. Пауза не останавливает всю игру, а только конкретную корутину; остальное продолжает работать.

Пример кода

Корутина пишет сообщение, ждёт 2 секунды и пишет второе:

using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour
{
    // Метод Start запускает корутину
    void Start()
    {
        StartCoroutine(ExampleCoroutine());
    }

    // Пример корутины с использованием WaitForSeconds
    IEnumerator ExampleCoroutine()
    {
        Debug.Log("Начало корутины");
        yield return new WaitForSeconds(2f); // Задержка на 2 секунды
        Debug.Log("Две секунды прошли");
    }
}