Огляд ключових понять Godot

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

Є чотири поняття, про які ви тут дізнаєтеся. Ми розглянемо їх коротко, щоб дати вам уявлення про те, як працює рушій. У розділі «Початок роботи» ви зможете використовувати їх на практиці.

Сцени

У Godot ви розбиваєте свою гру на багаторазові сцени. Сцена може бути персонажем, зброєю, меню в інтерфейсі користувача, окремим будинком, цілим рівнем або чим завгодно. Сцени у Godot гнучкі; вони виконують роль як prefabs, так і сцен в деяких інших ігрових рушіях.

../../_images/key_concepts_main_menu.png

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

../../_images/key_concepts_scene_example.png

Вузли

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

../../_images/key_concepts_character_nodes.png

Він складається з вузла KinematicBody2D, що називається "Character", а також з Sprite, Camera2D, CollisionShape2D.

Примітка

Назви вузлів закінчуються на "2D", оскільки це 2D-сцена. Їх 3D аналоги мають назви, які закінчуються на "3D".

Зверніть увагу, що вузли та сцени виглядають однаково в редакторі. Коли ви зберігаєте дерево вузлів як сцену, воно відображатиметься в редакторі як один вузол із прихованою внутрішньою структурою.

Godot надає велику бібліотеку базових типів вузлів, які можна комбінувати та розширювати для створення більш потужних. 2D, 3D або інтерфейс користувача, ви будете робити більшість речей використовуючи ці вузли.

../../_images/key_concepts_node_menu.png

Дерево сцени

Усі сцени вашої гри об’єднуються в дерево сцени, буквально дерево зі сцен. І оскільки сцени є деревами вузлів, дерево сцени також є деревом вузлів. Але легше думати про свою гру з точки зору сцен, оскільки вони можуть представляти персонажів, зброю, двері або ваш інтерфейс користувача.

../../_images/key_concepts_scene_tree.png

Сигнали

Вузли генерують сигнали, коли відбувається якась подія. Ця функція дозволяє змусити вузли комунікувати без жорсткого підключення їх у коді. Це дає вам велику гнучкість у тому, як ви структуруєте свої сцени.

../../_images/key_concepts_signals.png

Примітка

Детальніше про шаблон спостерігача можна прочитати тут: http://gameprogrammingpatterns.com/observer.html

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

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

Підсумок

Вузли, сцени, дерево сцени та сигнали — це чотири основні концепції Godot, які ви будете постійно використовувати.

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

Після цього короткого аналізу у вас напевно виникне багато запитань. Будьте з нами і ви отримаєте багато відповідей у розділі "Початок роботи".