Створення меню паузи в Unity
Додавання меню паузи має вирішальне значення для будь-якої гри Unity, оскільки воно дає гравцям можливість відпочити та отримати доступ до опцій. Цей підручник допоможе вам створити його, включаючи приклади коду та пояснення.
1. Створіть своє меню паузи
- Намалюйте бажаний макет, включаючи кнопки (Продовжити, Параметри, Вийти).
- Подумайте про використання прозорих панелей для менш нав’язливого відчуття.
2. Створіть полотно
- На панелі «Ієрархія» клацніть правою кнопкою миші та виберіть "UI -> Canvas".
- Встановіть "Render Mode" на "Screen Space - Overlay" для правильного позиціонування.
3. Створіть панель меню
- Під Canvas клацніть правою кнопкою миші та виберіть "UI -> Panel".
- Змініть розмір і розташуйте панель відповідно до вашого дизайну.
- Перейменуйте його на "PauseMenu" для кращої організації.
4. Додати кнопки
- Клацніть правою кнопкою миші на панелі PauseMenu та виберіть "UI -> Button."
- Повторіть для кожної потрібної кнопки (Продовжити, Параметри, Вийти).
- Назвіть їх відповідно (наприклад, "ResumeButton").
- Налаштуйте їх текст, розмір і положення.
5. Написання логіки
- Створіть новий сценарій C# під назвою "PauseMenu.cs."
- Прикріпіть сценарій до об’єкта PauseMenu в ієрархії.
6. Функція паузи
'PauseMenu.cs'
public class PauseMenu : MonoBehaviour
{
public bool isPaused; // Flag to track pause state
void Update()
{
if (Input.GetKeyDown(KeyCode.Escape))
{
// Toggle pause state on Escape key press
isPaused = !isPaused;
if (isPaused)
{
PauseGame();
}
else
{
ResumeGame();
}
}
}
void PauseGame()
{
// Set Time.timeScale to 0 to pause gameplay
Time.timeScale = 0;
// Make PauseMenu panel visible (activate its gameObject)
PauseMenu.gameObject.SetActive(true);
}
void ResumeGame()
{
// Set Time.timeScale back to 1 to resume gameplay
Time.timeScale = 1;
// Hide PauseMenu panel (deactivate its gameObject)
PauseMenu.gameObject.SetActive(false);
}
}
7. Взаємодія кнопок
- У вікні інспектора виберіть кожну кнопку.
- Натисніть «+» біля "OnClick" і перетягніть сценарій 'PauseMenu' на поле.
- Виберіть відповідну функцію (наприклад, ResumeGame для ResumeButton).
8. Додаткові штрихи
- Налаштуйте стилі кнопок, додайте звукові ефекти або реалізуйте меню параметрів.
- Розгляньте можливість використання prefabs для повторного використання в різних сценах.
Висновок
Сподіваємось, цей посібник дав вам фору для створення робочого меню паузи в Unity. Не забувайте розширювати цю базу, додаючи більше функцій і пристосовуючи її до потреб вашої гри.