Unreal Engine 5. За 78 часов Вы освоите Unreal Engine 5, создадите несколько проектов, сможете трудоустроиться в игровую компанию, либо сможете начать создавать свой серьёзный проект, и всё это с нуля! Дать Вам всю необходимую базу для создания Ваших проектов на Unreal Engine 5. Дать Вам достаточно знаний для устройства на работу в игровую студию. Заинтересовать Вас на дальнейшее развитие в области геймдева.
Редко, какая игра обходится без дизайна уровней, и любой специалист по Unreal Engine (даже если он не Level Designer) обязан быть хорошо знакомым с инструментами для этого. Аудио – важнейшая часть большинства игр, особенно, в инди-проектах, где нет большого бюджета. Аудио способно создать абсолютно любую атмосферу, и с ним нужно уметь работать. Материалы определяют, как выглядят 3D-объекты: какая на них текстура, какой рельеф, как они отражают свет и многое другое.
Без ООП немыслим ни один даже маленький проект. Это самый популярный подход к программированию в целом, и в Unreal Engine в частности. Весь интерфейс в играх: главное меню, меню паузы, инвентарь, количество патронов/здоровья, журнал и многое-многое другое – это всё виджеты. Без анимации в играх обходится крайне редко. Искры, взрывы, дым, огонь, брызги крови, дождь, снег и многое-многое другое – всё это системы частиц.
Cinematics используется, в первую очередь, для внутриигровых кат-сцен. Однако, очень часто этот инструмент используется и для создания фильмов, и для рекламных роликов, и даже для инфографики. Не секрет, что наиболее прибыльные игры являются сетевыми. И самые сложные игры для создания – это как раз они, поэтому они были оставлены напоследок. Однако, в Unreal Engine 5, в отличие от конкурентов, уже очень многое имеется из коробки. Поэтому создавать сетевые игры на Unreal Engine 5 существенно проще, чем на любом другом движке.
Chaos Destruction – это система в Unreal Engine, которая позволяет легко и эффективно делать разрушаемые объекты. Есть миф, что Unreal Engine слишком мощный движок для 2D-игр, поэтому для них лучше использовать что-то более простое по типу Unity. Однако, большое количество 2D-игр на Unreal Engine подтверждают обратное.
Для кого курс?
- Вы хотите создавать свои игры с целью их продажи через, например, Steam.
- Вы хотите трудоустроиться в игровую студию.
- Вы хотите научиться создавать игры, поскольку Вам это интересно.
- Вы хотите построить свою карьеру в игровой разработке (необязательно программистом).
- Вы устали от своей текущей работы и хотите попробовать что-то новое.
Программа курса:
Курс состоит из 166 уроков общей продолжительностью 35.5 часов. Сам курс разбит на 12 модулей.
Модуль 1. Введение
1. Как проходить курс? В уроке будут даны важные рекомендации по эффективному прохождению курса.
2. Установка Unreal Engine 5. В уроке скачаем и установим этот движок.
3. Работа в лаунчере. Дам множество полезных секретов по эффективной работе в лаунчере.
Модуль 2. Основы работы в движке
1. Запуск и создание первого проекта. Разберём, какие есть важные настройки при создании проекта.
2. Как ускорить Unreal Engine 5? Эта информация особенно актуальна, у кого производительность компьютера оставляет желать лучшего.
3. Структура файлов проекта. Из урока Вы узнаете, какова структура файлов и папок проекта и где и что находится.
4. Знакомство с интерфейсом. Из урока Вы познакомитесь с интерфейсом движка и узнаете все возможности по его настройке.
5. Панель Menu. Освоите всё необходимое, что имеется в панели Menu.
6. Работа во Viewport. Здесь содержатся полезные советы по эффективной работе во Viewport.
7. Панель Toolbar. В Unreal Engine 5 в ней многое поменялось, и всё это мы разберём.
8. Панель Content Browser. После этого урока Вы научитесь эффективно взаимодействовать с Content Browser.
9. Работа со Static Mesh. Обсудим импорт/экспорт 3D-моделей, LOD, Nanite, настройку Static Mesh, слоты и много чего ещё по мелочи.
10. Коллизия. Из урока Вы узнаете, что такое коллизия, как с ней работать, как её настраивать в мельчайших подробностях и деталях.
11. Компоненты. Обсудим эту важнейшую тему в Unreal Engine, которые новички, как правило, плохо понимают.
13. Координаты и всё, что с ними связано. Обсудим важнейшие моменты, касающиеся координат.
12. Volumes. Обсудим, какие есть Volumes в Unreal, и как и когда их нужно применять.
14. Физика. После этого урока Вы научитесь настраивать физические объекты.
15. Упаковка проекта. Из урока Вы узнаете, как упаковать проект под разные платформы, чтобы в Вашу игру мог поиграть любой желающий.
Модуль 3. Дизайн уровней
1. Работа с освещением. В уроке обсудим правильную настройку освещения, познакомимся с различными типами источников света.
2. Прототипирование. В Unreal Engine 5 больше нет BSP-геометрии, однако, разработчики добавили инструмент для 3D-моделирования, который идеально подходит для прототипирования, и об этом инструменте мы и поговорим в уроке.
3. Volumetric Cloud. Из урока Вы научитесь создавать и настраивать объемные облака.
4. PostProcess. Поговорим о пост-процессинге, который позволит Вам создавать любую атмосферу на сцене, а также различные эффекты.
5. Создание и настройка ландшафта. Поговорим про возможности движка при создании/редактировании ландшафта.
6. Foliage. Из урока Вы узнаете, как правильно добавлять множество растительности и других различных объектов на сцену.
7. Организация сцены. С организацией сцены у многих новичков проблемы, однако, её правильная организация – это основа качественного дизайна уровня.
8. Level Streaming. Достаточно сложная тема для новичков с большим количеством подводных камней, однако, на ней я «собаку съел» в своё время, поэтому и Вы разберётесь в ней после этого урока.
9. World Partition. World Partition появился в 5-й версии движка, и он совершенно необходим при создании больших открытых миров, и именно о нём мы и поговорим в этом уроке.
10. Создание уровня. В этом уроке я покажу пример создания полноценного уровня от начала и до конца.
Модуль 4. Аудио
1. Импорт аудиофайлов. Из урока Вы узнаете, как подготовить аудио-файлы перед импортом в движок.
2. Обзор возможностей. Обсудим, что вообще можно делать в Unreal Engine со звуком.
3. Создание Sound Cue. Из урока Вы узнаете, как работать с Sound Cue – совершенно необходимым инструментом при работе со звуком.
4. Создание Sound Attenuation. Sound Attenuation – важнейший элемент, который используется для затухания звуков в пространстве, о чём мы и поговорим в уроке.
5. AudioVolume и ревербация. Из урока Вы узнаете, что такое ревербация и как её настроить на сцене.
6. SoundClass и SoundMix. Это очень полезные классы, которые позволяют группировать звуки и управлять их настройками по-отдельности (например, благодаря им можно отдельно задавать громкость речи, звуков, музыки).
Модуль 5. Материалы
1. Теория работы с материалами. В уроке Вы узнаете, что такое материалы, как они работают, что требуется для их создания, а также как они работают в Unreal Engine 5.
2. Интерфейс редактора материалов. Познакомимся с интерфейсом редактора материалов, чтобы Вы в нём чувствовали себя уверенно.
3. Создание материала. В уроке мы создадим первые материалы, познакомимся с различными параметрами.
4. Создание Material Instance. Material Instance с помощью параметров позволяет использовать один материал для создания множества других. Это очень удобный инструмент, с которым Вы научитесь работать в этом уроке.
5. Математические операции. Математика (а зачастую просто арифметика) – это основа любого даже самого сложного материала. В уроке Вы научитесь применять математические операции для создания, на первый взгляд, непростых материалов.
6. Тайлинг. Из урока Вы узнаете, что такое тайлинг и как его настраивать.
7. Функции. Поговорим про функции, которые позволяют использовать какой-то блок вычислений повторно в других материалах.
8. Material Parameter Collection. Из урока Вы узнаете, как сделать глобальные параметры и получить к ним доступ из материалов. Например, на уровне идёт дождь, и Вам нужно все материалы на сцене сделать влажными.
9. Раскрашивание по вертексам. Это полезный инструмент, который позволяет делать более красивые уровни.
10. Создание материала для ландшафта. Посмотрев урок, Вы научитесь делать материалы для ландшафтов, что позволит Вам разукрашивать любой ландшафт по своему усмотрению.
11. Создание автоматериала для ландшафта. Автоматериал позволяет автоматически раскрасить весь ландшафт в зависимости от различных параметров (например, если угол наклона резкий, то там нарисуется материал скалы).
12. Декали. Из урока Вы узнаете, что такое декали и как их применять.
13. Создание материала стекла. В уроке создадим материал стекла и познакомимся с ещё некоторыми настройками материалов.
14. World Position Offset. Познакомимся с этим параметром, который используется для перемещения вертексов (вершин) объектов. Например, это может использоваться для создания деформации объектов.
15. Анимация в материалах. В уроке Вы увидите создание анимированного материала.
16. Subsurface Color. В некоторых ситуациях очень полезный параметр, позволяющий создать как бы внутреннее свечение.
17. Создание Master Material и его использование. Очень полезная практика, когда для всех объектов используется некоторый Master Material, а уже на его основе создаются все остальные. Вот об этой технике Вы и узнаете из этого урока.
Модуль 6. Основы программирования
1. Основы программирования в Unreal Engine. Из урока Вы узнаете, как устроено программирование в Unreal Engine 5 и как всё это работает.
2. Интерфейс редактора Blueprint. В уроке Вы научитесь эффективно работать с интерфейсом редактора Blueprint, также я дам несколько полезных советов.
3. События. Важнейшая тема, о которой мы поговорим в этом уроке.
4. Переменные и их типы. Обсудим, что такое переменные, какие есть типы и когда их применять (например, не все понимают разницы между String, Text и Name).
5. Работа с переменными. Разберём в уроке несколько примеров с переменными.
6. Перечисления. Из урока Вы узнаете, что такое перечисления и когда их стоит применять.
7. Математические операции. Поговорим о различных математических операциях, которые имеются в Unreal Engine 5.
8. Логические операции и операции сравненияДанная тема является основой для ветвления логики, поэтому она очень важна.
9. Условный оператор. Данный оператор уже осуществляет ветвление логики.
10. Функции. Функции позволяют повторно использовать один и тот же код, а также позволяют сделать его более компактным и более читабельным (туторщикам из Интернета очень рекомендую посмотреть этот урок, а не использовать постоянно Sequence).
11. Макросы. Я не большой поклонник макросов, но иногда они очень выручают, и о таких ситуациях мы поговорим. Разумеется, что такое макросы мы также обсудим.
12. Циклы. Циклы позволяют многократно выполнять один и тот же код (например, поочерёдно удалить все предметы из инвентаря), и именно о них мы поговорим в этом уроке.
13. Массивы. Ещё одна очень важная тема (как и все остальные в этом модуле), в которой любой новичок обязан быть как рыба в воде. И этим мы и займёмся в этом уроке.
14. Set и Map. Помимо классических массивов есть и другие способы хранения данных, и о них мы и поговорим в этом уроке.
15. Функции для работы с массивами. Разберём множество полезных функций для работы с массивами.
16. Таймеры. Таймеры позволяют запускать какую-то логику через заданный промежуток времени. Например, раз в секунду уменьшать сытость у персонажа и/или восстанавливать здоровье.
17. Timeline. В уроке Вы узнаете, что такое Timeline, как с ним работать и когда его стоит использовать.
18. Трассировка. Из урока Вы узнаете, что такое трассировка, какие есть виды трассировки, как её применять на практике.
19. Работа с кривыми. В уроке мы рассмотрим создание кривых и их использование в играх.
20. Отладка. Очень полезный урок, который научит Вас находить ошибки в своих программах.
Модуль 7. Объектно-ориентированное программирование
1. Что такое ООП? В уроке разберём, что такое ООП, что такое наследование, инкапсуляция и полиморфизм.
2. Создание класса. В уроке мы создадим класс и пропишем логику в нём.
3. Работа с компонентами. Из урока Вы узнаете, что такое компоненты, какие они бывают и как с ними работать.
4. Construction Script. В уроке Вы узнаете, как правильно использовать Construction Script.
5. Наследование. В уроке мы ещё раз остановимся на наследовании и реализуем пример с наследованием классов.
6. Модификаторы доступа. Если преподаватель не использует protected/private (а их использует навскидку 1 из 15 «преподавателей»), значит, в программировании он является полным нулём. Но Вы после этого урока уже будете понимать, что такое доступ к переменным и функциям и почему так важно использовать модификаторы доступа protected/private.
7. Интерфейсы. Ещё одна сложная тема для новичков, но я постараюсь её объяснить простым языком и на примерах.
8. Класс GameMode. Из урока Вы узнаете, что такое класс GameMode, для чего он нужен и как его настраивать.
9. Создание класса игрока. В уроке Вы увидите создание персонажа игрока с нуля.
10. Настройка управления. Добавим управление к созданному персонажу.
11. Настройка Character Movement.Поговорим про компонент CharacterMovement и про его настройки.
12. Создание класса противника. Создадим нашего противника.
13. Создание искусственного интеллекта. Добавим к нашему противнику искусственный интеллект.
14. Behavior Tree. Обсудим дерево поведения, которое очень помогает при создании даже очень сложной логики искусственного интеллекта.
15. Environment Query System. Это важная система, которая позволяет делать «разумный» AI, опирающийся на окружающую среду.
16. Сохранение и загрузка. Из урока Вы узнаете, как реализуется сохранение и загрузка игры.
17. Actor Component. Научимся создавать свои собственные компоненты.
18. Event Dispatcher. Диспетчеры событий необычайно важны, если Вы хотите делать качественные проекты. По сути, это реализованный паттерн Наблюдатель. Но даже, если Вы новичок, всё равно надо привыкать использовать Event Dispatcher с самого начала.
19. Структуры. Посмотрев этот урок, Вы узнаете, что такое структуры и как их применять на практике.
20. Использование Data Table. Благодаря этому уроку Вы научитесь работать с таблицами данных.
21. Сплайны. В уроке поговорим про сплайны и про их программирование.
22. Процедурная генерация Mesh. Генерация объектов встречается достаточно часто, и как это делается в Unreal Engine, Вы узнаете из этого урока.
Модуль 8. Виджеты
1. Основы создания виджетов. В уроке Вы получите всю базу для создания своих первых виджетов.
2. Интерфейс редактора виджетов. Обсудим весь необходимый функционал для создания виджетов.
3. Элементы. В уроке мы разберём десятки самых разных элементов, которые нам доступны в движке.
4. Создание UI. Создадим свой HUD.
5. Программирование логики. Добавим кода, чтобы этот HUD изменялся в зависимости от текущих параметров (например, количества здоровья персонажа).
6. Binding через Event Dispatcher. Сделаем оптимизированный вариант получения данных для виджетов. Большинство новичков делает связку каждый тик, что крайне расточительно и неправильно в 99% случаях.
7. Добавление виджета повышения уровня. Добавим ещё один виджет, настроим его логику.
8. Анимация. В уроке Вы познакомитесь с тем, как создаётся анимация виджетов и как с ней вообще работать.
9. Использование PreConstruct. Очень полезное событие, которое многие новички игнорируют, однако, Вы из урока узнаете, почему оно так важно и как его правильно использовать.
10. Динамическое создание виджетов. Очень часто приходится выводить виджеты динамически (например, ячейки инвентаря), и как это делать, Вы узнаете в этом уроке.
Модуль 9. Анимация
1. Теория. В уроке Вы получите всю необходимую теорию по скелетной анимации.
2. Работа со Skeletal Mesh. Научимся работать со Skeletal Mesh, изучим интерфейс редактора.
3. Работа с Animation Sequence. Научимся настраивать анимацию, делать нарезки, познакомимся с множеством параметров и возможностей.
4. Создание Blend Space. Из урока Вы узнаете, что такое Blend Space и как его создавать.
5. Создание Animation Blueprint. Из урока Вы узнаете, как создаётся анимационная логика.
6. Создание State Machine. Поговорим про State Machine, разберём, когда она нужна, а когда нет.
7. Создание Blend Space 2D. Создадим двумерный Blend Space для более сложной анимации.
8. Создание Aim Offset. В уроке Вы узнаете, что такое Aim Offset и как его создать.
9. Работа с Animation Montage. Разберём создание, настройку и запуск анимационных монтажей.
10. Работа с Notify. Notify – инструмент, позволяющий уведомлять об определённом моменте анимации. Например, в анимации бега можно поймать момент, когда нога персонажа наступает на землю, и именно в этот момент проиграть звук шага.
11. Root Motion. Root Motion служит для создания более качественной анимации, и в рамках урока мы создадим персонажа с использованием Root Motion.
12. IKRig и IKRetargeter. В уроке разберём эти новые инструменты, которые позволяют делать ретаргет анимации (то есть, когда у Вас есть 1 анимация, и Вы хотите её использовать на разных скелетах, а не создавать для разных персонажей одну и ту же анимацию заново).
13. ControlRig. Ещё один новый инструмент, доступный в Unreal Engine 5, который мы разберём в этом уроке.
14. Анимация одежды. Из урока Вы узнаете, как сделать анимацию одежды персонажа (например, чтобы какие-нибудь «висюльки» на одежде развевались во время движения).
Модуль 10. Системы частиц
1. Основы Niagara. Обсудим всю терминологию, необходимую для создания частиц в Niagara.
2. Интерфейс редактора Niagara. Познакомимся с интерфейсом редактора, где создаются системы частиц.
3. Создание частиц. Из урока Вы узнаете, как создаются и настраиваются частицы.
4. Создание GPU-частиц. Разберём случаи, когда нужны GPU-частицы, а также создадим пример.
5. Создание Mesh-частиц. В уроке мы разберём создание частиц, состоящих из обычных 3D-объектов.
6. Создание Beam-частиц. Создадим лазерный луч, которым будет стрелять наш персонаж.
7. Проигрывание звуков. После просмотра урока Вы узнаете, как добавить звук в нужный момент при проигрывании системы Niagara.
8. События. Разберёмся с очень полезным механизмом в Niagara – событиями.
9. Создание дождя. Реализуем дождь на уровне с брызгами от удара капель об землю.
Модуль 11. Cinematics
1. Основы и интерфейс редактора Sequencer. Разберём все необходимые инструменты, доступные нам в Sequencer.
2. Добавление персонажа и камеры. Добавим персонажа и камеру, а также создадим уже первый снимок (shot).
3. Добавление новых снимков. Познакомимся с ещё некоторыми функциональными возможностями Sequencer.
4. Вызов функций. Очень полезная возможность Sequencer – это вызов функций прямо из кат-сцены. Например, у Вас есть функция в Blueprint, где запускается какой-нибудь механизм, и Вы эту функцию можете вызвать прямо из кат-сцены.
5. Изменение скорости воспроизведения. Разберёмся с тем, как динамически регулировать скорость воспроизведения.
6. Добавление эффектов. Добавим в кат-сцену системы частиц Niagara.
7. Добавление затухания. Добавим эффект затухания в кат-сцену.
8. Добавление аудио. Добавим музыку на фон, а также речь персонажам кат-сцены.
9. Добавление субтитров. Добавим субтитры к диалогу во время кат-сцены.
10. Запуск кат-сцены через Blueprint. Научимся запускать кат-сцены через Blueprint, как это обычно и происходит. Например, персонажа заходит в какой-нибудь триггер и после этого начинается кат-сцена. Разберём так же некоторые важные настройки.
11. Рендер. Сделаем рендер кат-сцены, чтобы её мог посмотреть любой человек в обычном проигрывателе.
Модуль 12. Мультиплеер
1. Теория мультиплеерных игр. В уроке Вы получите всю необходимую базу для качественного понимания того, как работают сетевые игры.
2. Макрос Switch Has Authority. Разберём очень полезный макрос, который помогает разделить логику клиента и сервера.
3. Репликация объектов. Из урока Вы узнаете, что такое репликация и как её настраивать у объектов.
4. Репликация переменных. Обсудим репликацию переменных, разберём примеры.
5. Репликация событий. Важнейшая тема, которая позволит Вам не запускать эффекты частиц на выделенном сервере и не позволять делать проверки важных вещей на клиенте.
6. Оптимизация репликации. Поговорим об оптимизации репликации, а также о решении проблем, которые эта оптимизация вызывает.
7. Работа с сессиями. Разберёмся с механизмом сессий. После этого урока Вы уже сможете запаковать свою игру, отправить другу и играть в неё с ним по сети.
8. Заключение. Важные слова напутствия и советы, в каком направлении стоит двигаться дальше, исходя из моего опыта.
Бонус 1. Chaos Destruction
1. Как создать разрушаемые объекты?
2. Как разрушить разрушаемые объекты в игре?
3. Что такое и как использовать Field System Actor?
4. Для чего нужны якорные поля?
5. Как правильно применять объект FS_MasterField?
6. Как связать Niagara System и Chaos Destruction?
7. Как подписаться на события, возникающие при разрушении объектов?
8. Как оптимизировать Chaos Destruction?
Бонус 2. Разработка 2D-игры
1. Где найти ассеты для 2D-игр?
2. Как создать 2D-уровень?
3. Как создать персонажа на спрайтах?
4. Как добавить управление этому персонажу?
5. Как добавить прыжок?
6. Как создать HUD?
7. Как добавить интерактивные объекты в 2D-мир?
8. Как реализовать сбор различных объектов игроком?
9. Как реализовать логику возрождения?
10. Как добавить противника?
11. Как сделать патрулирование территории противником?
12. Как реализовать взаимодействие с противником?
13. Как добавить новый уровень и сделать переход с одного уровня на другой?
14. Как передать данные между разными уровнями?
Бонус 3. Видеокурс Создание игр на Unreal Engine 4
Это огромный курс, состоящий из 184 уроков общей продолжительностью более 41-го часа, и Вы его получите абсолютно бесплатно вместе с курсом «Создание игр на Unreal Engine 5». Несмотря на то, что в этом бонусном курсе рассматривается движок предыдущей версии, Вам любой специалист скажет, что принципиальных отличий между 4 и 5 версиями крайне мало. Немного изменился интерфейс и его цвета, убрали BSP-геометрию, Cascade окончательно заменили на Niagara, переделали систему ретаргета, добавили новый функционал. Однако, всё остальное, а это 99% функционала осталось неизменным: оно просто перекочевало в новую версию. Отсюда вывод, что курсы и уроки по 4-й версии всё так же актуальны.
А теперь, что ждёт Вас в этом Бонусном курсе. Во-первых, Вы сможете ещё раз пройтись по всем основным темам. Как показывает моя практика, с первого раза усваиваются только основные моменты, а вот детали и нюансы остаются незамеченными, поэтому рекомендуется смотреть курс дважды. Однако, смотреть тот же самый курс два раза тяжеловато психологически, а вот смотреть другой будет гораздо легче. Поэтому благодаря этому Бонусу, Вы пройдётесь ещё раз по всем темам, и усвоите всё значительно лучше.
Во-вторых, в курсе «Создание игр на Unreal Engine 4» есть целый ряд очень полезных Бонусов: «Динамическая смена дня и ночи», «Создание динамической погоды», «Создание искусственного интеллекта для NPC», «Создание игры под мобильные устройства» и «Создание прототипа RPG с открытым миром», каждый из которых тянет на ещё один небольшой курс, и все они уже ждут Вас!
Чему Вы научитесь?
- Научитесь уверенно работать в Unreal Engine 5.
- Перестанете испытывать страх перед множеством функций, кнопок, пунктов меню и тому подобному.
- Научитесь создавать свои собственные уровни и миры.
- Научитесь работать с аудио в движке.
- Научитесь создавать свои материалы и править под свои нужды чужие материалы.
- Освоите программирование на уровне достаточном для создания огромного количества самых разных проектов.
- Освоите объектно-ориентированное программирование, на котором построен любой проект в Unreal Engine (да и сам движок).
- Научитесь делать HUD любой сложности.
- Научитесь работать с анимацией в Unreal Engine.
- Освоите Niagara и научитесь создавать свои собственные системы частиц.
- Научитесь создавать свои собственные кат-сцены.
- Научитесь делать мультиплеерные игры.
- Научитесь делать игры для мобильных платформ.
- Освоите Chaos Destruction для создания разрушаемых объектов.
- Научитесь создавать 2D-игры.