Вузли та Сцени¶
У Огляд ключових понять Godot ми побачили, що гра Godot — це дерево сцен, а кожна сцена — це дерево вузлів. У цьому уроці ми розповімо про них трохи більше. Ви також створите свою першу сцену.
Вузли¶
Вузли є основними будівельними блоками вашої гри. Вони як інгредієнти в рецепті. Існують десятки видів вузлів, які можуть демонструвати зображення, відтворювати звук, імітувати камеру та багато іншого.

Усі вузли мають такі властивості:
Ім'я.
Властивості, які можна редагувати.
Вони отримують зворотні виклики для оновлення кожного кадру.
Ви можете розширити їх за допомогою нових властивостей і функцій.
Ви можете додати їх до іншого вузла як нащадків.
Останній атрибут є ключовим. Разом вузли утворюють дерево, яке є потужною функцією для організації проектів. Оскільки різні вузли мають різні функції, їх поєднання призводить до складнішої поведінки. Як ми бачили раніше, ви можете створити ігрового персонажа, за яким слідує камера, використовуючи кінематичний вузол тіла під назвою "Персонаж", вузол спрайтів, вузол камери та вузол форми зіткнення.

Сцени¶
Коли ви організуєте вузли в дереві, як наш персонаж, ми називаємо цю конструкцію сценою. Після збереження сцени працюють як нові типи вузлів у редакторі, куди ви можете додати їх як нащадків до існуючого вузла. У цьому випадку екземпляр сцени з’явиться як вузол із прихованим внутрішнім елементом.
Сцени дозволяють структурувати код вашої гри так, як ви хочете. Ви можете компонувати вузли, щоб створювати власні та складні типи вузлів, як-от ігрового персонажа, який бігає і стрибає, панель життя, скриню, з якою ви можете взаємодіяти, тощо.

Редактор Godot по суті є редактором сцен. Він має безліч інструментів для редагування 2D і 3D сцен, а також інтерфейс користувача. Проект Godot може містити стільки цих сцен, скільки вам потрібно. Але рушію потрібна лише одна - головна сцена вашої програми. Це сцена, яку Godot вперше завантажить, коли ви або гравець запускаєте гру.
Крім вузлів, сцени мають такі властивості:
Вони завжди мають один кореневий вузол, як «Персонаж» у нашому прикладі.
Ви можете зберегти їх на жорсткому диску та завантажити пізніше.
Ви можете створити стільки екземплярів сцени, скільки забажаєте. Ви можете мати п’ять або десять персонажів у вашій грі, створених зі сцени персонажа.
Створення першої сцени¶
Давайте створимо нашу першу сцену з одним вузлом. Для цього спочатку потрібно створити новий проект. Після відкриття проекту ви повинні побачити порожній редактор.

In an empty scene, the Scene dock on the left shows several options to add a root node quickly. "2D Scene" adds a Node2D node, "3D Scene" adds a Spatial node, and "User Interface" adds a Control node. These presets are here for convenience; they are not mandatory. "Other Node" lets you select any node to be the root node. In an empty scene, "Other Node" is equivalent to pressing the "Add Child Node" button at the top-left of the Scene dock, which usually adds a new node as a child of the currently selected node.
Ми збираємося додати один вузол Label до нашої сцени. Його функція — відобразити текст на екрані.
Натисніть кнопку «Додати дочірній вузол» або «Інший вузол», щоб створити кореневий вузол.

Відкриється діалогове вікно Створення вузла, у якому буде показано довгий список доступних вузлів.

Виберіть вузол Label (Node/CanvasItem/Control/Label). Ви також можете ввести його назву, щоб відфільтрувати список.

Натисніть на вузол Label, щоб вибрати його, і натисніть внизу вікна кнопку Створити.

Багато чого відбувається, коли ви додаєте перший вузол сцени. Сцена змінюється на 2D робочу область, оскільки Label є типом 2D вузла. Вибрана мітка з’являється у верхньому лівому куті вікна перегляду. Вузол з’являється на панелі «Сцена» зліва, а властивості вузла – на панелі «Інспектор» праворуч.
Зміна властивостей вузла¶
Наступним кроком буде зміна властивості мітки "Text". Давайте змінимо її на "Hello World".
Перейдіть до панелі Інспектор праворуч від вікна перегляду. Клацніть всередині поля під властивістю Text і введіть «Hello World».

Ви побачите відображення тексту у вікні перегляду під час введення.
Ви можете перемістити вузол мітки у вікні перегляду, вибравши інструмент переміщення на панелі інструментів.

Вибравши мітку, клацніть і перетягніть у будь-яке місце у вікні перегляду, щоб перемістити її до центру перегляду, обмеженого прямокутником.

Запуск сцени¶
Все готово для запуску сцени! Натисніть кнопку Відтворити сцену з правої верхньої частини екрану F6 (Cmd + R на macOS).

Спливаюче вікно пропонує вам зберегти сцену, яку потрібно запустити.

Натисніть кнопку Так і в браузері файлів, що з’явиться, натисніть кнопку Зберегти, щоб зберегти її як «Label.tscn».

Примітка
Діалогове вікно «Зберегти сцену як», як і інші файлові діалогові вікна в редакторі, дозволяє зберігати файли лише всередині проекту. Шлях res://
у верхній частині вікна представляє кореневий каталог проекту і означає "шлях ресурсу". Для отримання додаткової інформації про шляхи до файлів у Godot див. Файлова система.
Програма повинна відкритися в новому вікні і відобразити текст «Hello World».

Закрийте вікно або натисніть F8, щоб вийти з запущеної сцени.
Примітка
Якщо це не спрацює, і у вас є дисплей hiDPI принаймні на одному з моніторів, перейдіть в Проєкт → Параметри проєкту → Дисплей → Вікно, а потім увімкніть Дозволити Hidpi у підрозділі Dpi.
Встановлення головної сцени¶
Щоб запустити нашу тестову сцену, ми використали кнопку «Відтворити сцену». Кнопка поруч з нею дозволяє встановити та запустити основну сцену проекту. Ви можете натиснути F5 (Cmd + B на macOS) для цього.

З’явиться спливаюче вікно з пропозицією вибрати головну сцену.

Натисніть кнопку Виділити, а потім у діалоговому вікні файлу, що з’явиться, двічі клацніть Label.tscn.

Демонстрація має запуститися знову. Щоразу, коли ви запускаєте проект, Godot використовуватиме цю сцену як відправну точку.
Примітка
Редактор зберігає шлях до основної сцени у файлі project.godot у каталозі вашого проекту. Хоча ви можете безпосередньо редагувати цей текстовий файл, щоб змінити налаштування проекту, ви також можете використовувати для цього вікно «Проект -> Параметри проекту».
У наступній частині ми обговоримо ще одну ключову концепцію в іграх і в Godot: створення екземплярів сцени.