Cкрипт Паузы в Unity 5.
Пауза, при создании любой игры, является неотъемлемой частью интерфейса. Через меню паузы можно реализовать такие функции игры как:
- сохранение или загрузка,
- выход в меню или на рабочий стол,
- переход в меню настройки игры,
- или просто остановка игры.
В этом скрипте мы реализуем остановку игры и выход в главное меню. Для этого нам понадобится в проекте создать две сцены и С# скрипт, в котором пишем вот такие строки:
using UnityEngine;
using System.Collections;
public class puse : MonoBehaviour
{
public float timer;
public bool ispuse;
public bool guipuse;
void Update()
{
Time.timeScale = timer;
if (Input.GetKeyDown(KeyCode.Escape) && ispuse == false)
{
ispuse = true;
}
else if (Input.GetKeyDown(KeyCode.Escape) && ispuse == true)
{
ispuse = false;
}
if (ispuse == true)
{
timer = 0;
guipuse = true;
}
else if (ispuse == false)
{
timer = 1f;
guipuse = false;
Видео:Как сделать паузу в Unity 3D | Unity 5Скачать
}
}
public void OnGUI()
{
if (guipuse == true)
{
Cursor.visible = true;// включаем отображение курсора
if (GUI.Button(new Rect((float)(Screen.width / 2), (float)(Screen.height / 2) - 150f, 150f, 45f), "Продолжить"))
{
ispuse = false;
timer = 0;
Cursor.visible = false;
}
if (GUI.Button(new Rect((float)(Screen.width / 2), (float)(Screen.height / 2) - 100f, 150f, 45f), "Сохранить"))
{
}
if (GUI.Button(new Rect((float)(Screen.width / 2), (float)(Screen.height / 2) - 50f, 150f, 45f), "Загрузить"))
{
}
if (GUI.Button(new Rect((float)(Screen.width / 2), (float)(Screen.height / 2), 150f, 45f), "В Меню"))
{
ispuse = false;
timer = 0;
Application.LoadLevel("Menu"); // здесь при нажатии на кнопку загружается другая сцена, вы можете изменить название сцены на свое
}
}
}
}Здесь все просто. Две переменные, одна из которых будет при нажатии на ESC останавливать время, а вторая, при остановке времени будет выводить на экран кнопки меню.
Весь скрипт построен, по сути, на одной функции :
Time.timeScale = timer
TimerScale является, как бы, своеобразными часами которые при значении 1 работают в нормальном режиме и время проходит как обычно, при значении 0,5 время замедляется в 2 раза, а при значении 0 время вообще останавливается. Этим и воспользуемся для создания паузы.

Создадим в проекте пустышку и поместим на нее наш скрипт. При нажатии на ESC игра остановится и на экране появится меню паузы с кнопками, которые пока не все активны. Так же, при нажатии на кнопку «В меню» можно перейти на другую сцену где будет реализовано ваше основное меню игры.
На этом все. Удачных проектов!
📺 Видео
Как сделать паузу в Unity !? Туториал за 5 минут #unityСкачать

Создание меню паузы в UnityСкачать

UNITY 5 ДЛЯ НАЧИНАЮЩИХ | МЕНЮ. ПАУЗА В ИГРЕ #1Скачать

ДОБАВЛЯЕМ ГЛАВНОЕ МЕНЮ И ПАУЗУ В ИГРУ. Unity 3DСкачать

Уроки по Unity 3D,скриптинг для новичков,пауза в Unity,меню паузыСкачать

Как сделать паузу в Unity 2D / туториалСкачать

Пауза в игре | Уроки по вашим заявкам! | Unity 5Скачать

UNITY ПАУЗА В ИГРЕ #1 НАЧАЛОСкачать

Unity 5 уроки,пауза в игре,как сделать паузу,остановка игры,timescaleСкачать

[UNITY 5] Создание игры "Hill Climb Racing" [#9] - Меню паузы и нововведения.Скачать
![[UNITY 5] Создание игры "Hill Climb Racing" [#9] - Меню паузы и нововведения.](https://i.ytimg.com/vi/bpVF_7Ai9Ec/0.jpg)
Меню паузы в Unity - легкоСкачать

Функция, которая будет выполнена через 5 секунд - UNITY 3DСкачать

Пауза, рестарт и управление сценами в UnityСкачать

Unity и редактор скриптовСкачать

Пауза в игре на Unity за минуту #shortsСкачать

UNITY ПАУЗА В ИГРЕ #5 ПЕРЕВОД ТЕКСТАСкачать

[UNITY] Как добавить паузу в игру на Unity.Скачать
![[UNITY] Как добавить паузу в игру на Unity.](https://i.ytimg.com/vi/QE71IIrnOl8/0.jpg)
КАК СДЕЛАТЬ ПАУЗУ & МЕНЮ | UNITY 2DСкачать

Как правильно сделать пауза в игре на Unity.Скачать











На функцию
Application.LoadLevel( );
Юнити 5 ругается как на устаревшую.
У них на сайте рекомендуют использовать SceneManager.LoadScene( ). При этом нужно будет подключить библиотеку SceneManagement.
using UnityEngine.SceneManagement;
. . .
SceneManager.LoadScene( );