Найти тему
Unreal Engine

Часть 2: Знакомство с системой Blueprint.

Начнём с того, что же такое Blueprint?

Blueprint — система визуального программирования в Unreal Engine 4 и Unreal Engine 5 на основе нодов с данными: событиями и функциями. Их можно связывать между собой и формировать элементы геймплея. Различают несколько видов блюпринтов, рассчитанных на определённые задачи — от создания события на уровне до интерфейсов и макросов, которые можно использовать как основу для другого блюпринта.

Blueprint или C++?

Я считаю, что всё зависит от проекта и возможностей разработчика. Многие делают только на блюпринтах, другие делают, только на C++. Иногда люди делают код и на C++ и на блюпринте.

Я считаю, что для создания простых игр и малых знаниях программирования у разработчика, лучше подойдёт блюпринт. А для создания уже средних или сложных игр, лучше подойдёт код сделанный на С++.

Создание Blueprint

Перейдём в Content Browser и нажать Add New или нажать правую кнопку мыши на пустом поле. После этого надо нажать на Blueprint class.

Когда мы нажали на blueprint class, появится окно с запросом родительского класса. Есть семь основных класса:

1. Actor: Блюпринт, который может быть помещён на сцену как объект.

2. Pawn: Блюпринт, который можно 'вселиться' и управлять им.

3. Character: Блюпринт, который содержит в себе функциональность готового персонажа. Так же является Pawn.

4. PlayerController: Блюпринт, который отвечает за управлением Pawn классом.

5. Game Mode: Блюпринт, который отвечает за игру, её правила, очки, а так же остальные главные классы(Pawn, HUD, Controller).

6. Actor Component: Блюпринт, который может быть добавлен к любому Actor.

7. Scene Component: Блюпринт, который имеет структуру сцены и может быть присоединен к другим компонентам сцены.

-2

Blueprint редактор

Для начала выберете в редакторе вкладку Event Graph. Event Graph — основное пространство, где происходит сборка кода.

Blueprint редактор состоит из четырёх панелей:

-3

1. Components: Содержит список текущих компонентов.

2. My Blueprint: Этот раздел обычно используется для управления графами, функциями и переменными.

3. Details: Здесь отображаются свойства текущего выбранного элемента.

4. Graph: Все ноды и логика находятся здесь. Перемещаться по панели можно, зажав правую кнопку мыши и перемещая мышь. Масштабирование выполняется прокруткой колеса мыши.

5. Viewport: Здесь отображается все компоненты, имеющие визуальные элементы.

Что такое нод?

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

Вот принцип работы нодов:

-4

Node C и Node D никогда не выполнятся, потому что входной контакт Node C не имеет подключения.

Пример использования Blueprint

Попробуем сделать приветственную надпись на экран по аналогам с самым первым скриптом в языках программирования — Hello World!

Для начала создаём шаблон Third Person(можно взять и другой). Теперь нам надо создать blueprint. Нам предложат выбрать класс.

-5

Выбираем класс Actor. Придумываем любое название для blueprint'а и открываем редактор.

В редакторе графов есть три основных события.

1. Event BeginPlay — событие, которое запускается на старте игры.

2. Event ActionBeginOverlap — событие, взаимодействующее с другим Actor, например зона-триггер или препятствие.

3. Event Tick — событие, которое происходит в каждом кадре.

-6

Находим BeginPlay и вытягиваем цепочку. За набор текста отвечает функция Print Text, поэтому вытягиваем нужную функцию. Компилируем и сохраняем blueprint.

-7

Если мы сейчас запустим, то ничего не произойдёт. Чтобы высветилась надпись надо перенести blueprint на сцену. Надпись появилась и сразу исчезла. потому что мы выбрали событие Event BeginPlay, но если заменить её на Event Tick, строка будет появляться постоянно.

-8

Вот у нас появилась наша фраза, также её можно сделать больше.

На этом вторая часть изучения с движком Unreal Engine закончена.

В следующей части, я расскажу как я создал свою игру на движке Unreal Engine.