Как сделать так чтобы прошло 3 секунды и Unity сама меня перекидывает на другую сцену?

В Unity, чтобы реализовать переход на другую сцену с задержкой в 3 секунды, можно использовать несколько подходов. Вот несколько способов, которые вы можете использовать:

Способ 1: Используя Invoke()
------------------
1. Создайте пустой объект на текущей сцене (например, назовите его "SceneManager").
2. Прикрепите компонент скрипта к "SceneManager".
3. В скрипте добавьте следующий код:

using UnityEngine;
using UnityEngine.SceneManagement;

public class SceneManager : MonoBehaviour
{
    void Start()
    {
        // Вызываем метод LoadScene() через 3 секунды
        Invoke("LoadScene", 3f);
    }

    void LoadScene()
    {
        // Загружаем новую сцену по ее индексу
        SceneManager.LoadScene(1); // Если ваша сцена имеет индекс 1
    }
}

Способ 2: Используя короутину
------------------
1. Создайте пустой объект на текущей сцене (например, назовите его "SceneManager").
2. Прикрепите компонент скрипта к "SceneManager".
3. В скрипте добавьте следующий код:

using UnityEngine;
using UnityEngine.SceneManagement;

public class SceneManager : MonoBehaviour
{
    void Start()
    {
        // Запускаем корутину, которая вызывает метод LoadScene() через 3 секунды
        StartCoroutine(LoadSceneAfterDelay(3f));
    }

    IEnumerator LoadSceneAfterDelay(float delay)
    {
        yield return new WaitForSeconds(delay);

        // Загружаем новую сцену по ее индексу
        SceneManager.LoadScene(1); // Если ваша сцена имеет индекс 1
    }
}

Способ 3: Используя Time.deltaTime
------------------
1. Создайте пустой объект на текущей сцене (например, назовите его "SceneManager").
2. Прикрепите компонент скрипта к "SceneManager".
3. В скрипте добавьте следующий код:

using UnityEngine;
using UnityEngine.SceneManagement;

public class SceneManager : MonoBehaviour
{
    float timer = 0f;

    void Update()
    {
        // Увеличиваем таймер каждый кадр
        timer += Time.deltaTime;

        if (timer >= 3f)
        {
            // Загружаем новую сцену по ее индексу
            SceneManager.LoadScene(1); // Если ваша сцена имеет индекс 1
        }
    }
}

Все эти способы работают асинхронно и осуществляют переход на новую сцену с задержкой в 3 секунды, после чего загружается указанная сцена. Вы можете выбрать любой из этих способов в зависимости от вашего предпочтения и требований проекта.