XYZ School
2 отзыва

GAMECODE

На данном курсе ты научишься писать код, который позволит персонажам игры двигаться, перемещаться, стрелять и активно взаимодействовать с окружающим миром. Будешь осваивать С++, работать с движком Unreal Engine, настраивать инвентарь и окружение, создавать персонажей и оружие. А работать игровым программистом сможешь уже через 5 месяцев.
  • 5 месяцев
  • Сертификат об обучении
60 500 ₽

Актуальная стоимость обучения.

Данные обновлены 21 января 2022 г.

  • 5 месяцев
  • Сертификат об обучении
Перейти на страницу курса
Важно. Итоговая цена на странице курса может отличаться.

Программа курса

Ознакомьтесь с программой курса «GAMECODE» от XYZ School

Часть 1:Введение

1. Обзор курса:

  • Что такое программирование игровой логики

  • Чему научат на курсе

  • Какие технологии будут использоваться и требования на курсе

2. Установка и настройка окружения:

  • Устанавливаем UE4

  • Устанавливаем Visual Studio C++ community edition

3. Создание нового проекта:

  • Используем шаблон UE4 blank project

  • Обзор редактора

  • Базовые инструменты создания уровней

  • Асtor'ы и статические меши (static meshes)

  • BSP кисти и работа с ними

  • Простой Grid-материал

4. С++ в Unreal Engine:

  • Для тех кто в С++ впервые: почему 2 файла (.h и .cpp)

  • Объектная модель. Классы UObject, AActor, UActorComponent

  • Система рефлексии в UE4: UPROPERTY(), UFUNCTION() и т.д.

  • Еще один момент для тех кто в С++ впервые: что такое указатели и как их используют.

5. Сборка игры:

  • Visual studio solution: проекты engine (UE4) и самой игры.

  • Конфигурации билдов (DebugGame Editor, Development editor, DebugGame, Development, Shipping)

  • Внесение изменений в код и их подгрузка редактором (full rebuild vs. hot reload vs. live coding)

  • Сборка и упаковка (packaging) игры.

6. Настройка оставшегося окружения: трекер задач и система контроля версий:

  • Perforce как предпочтительная система контроля версий. Обзор других вариантов - git, SVN, Plastic SCM

  • Трекеры задач Jira и Trello

Часть 2:Создание персонажа с нуля на С++. Обработка ввода, перемещение персонажа и анимационная система в Unreal Engine.

1. Классы ACharacter и UCameraComponent:

  • Классы AActor и Pawn в UE4

  • Компонент Camera component

2. Обработка ввода и простое перемещение. Movement Component:

  • Таблицы ввода, input actions и input axis

  • Компонент Movement component и режимы перемещения

  • UInputComponent и Обработка ввода

3. Анимации персонажа. Класс Anim Instance и Animation blueprint:

  • Скелетные меши (skeletal mesh)

  • Animation sequence и animation montage

4. Реализация прыжка, приседания и бега:

  • Обрабатываем ввод (нажатие "пробела", "ctrl", "sprint")

  • Вызываем соответствующий метод у персонажа

  • Поддержка анимации

Часть 3:Оружие

1. Оружие ближнего боя:

  • Импорт модели оружия

  • Создание классов BaseWeapon и MeleeWeapon

  • Экипировка оружия персонажем. Прикрепление к слотам.

  • Атака оружием ближнего боя. Обработка ввода и анимация.

  • Хит капсула и тесты на попадание

  • Применение удара к объектам

  • Дополнительные анимации

2. Основы оружия дальнего боя: хит скан (hit scan):

  • Импорт модели оружия дальнего боя: оружие + магазин

  • Реализация механики стрельбы

  • Регистрация попадания через hit scan.

  • Добавление визуальных эффектов

3. Оружие дальнего боя: амуниция, скорострельность, прицеливание (ADS):

  • Амуниция

  • Автоматический огонь

  • Прицеливание (Adding aiming down - ADS)

4. Оружие дальнего боя: дробовики:

  • Регистрация попадания дробовика - конус поражения, множественные хит-сканы)

  • Перезарядка дробовика

5. Регистрация попадания через снаряды ("проджектайлы" - projectiles):

  • Сложная баллистика (гравитация и рикошет)

  • Projectile movement component

6. Взрывы:

  • Создаем взрывающийся Actor - бочку

  • Зона взрыва. Регистрация урона от взрыва

  • Нанесение урона и добавление импульса

7. Гранаты:

  • Создаем гранату

  • Бросаем гранату (анимации персонажа)

  • Траектория гранаты - обработка отскоков

  • Таймер гранаты

Часть 4:Искусственный интеллект NPC. AI персонажи. AI контроллеры, Blackboards, навигация и дерево поведения

1. Создание "стационарного" NPC - башни:

  • Создание классов AICharacter и AIAnimationInstance

  • AIcontroller и TeamID

  • Blackboard. Установка врага в blackboard. (по попаданию в радиус)

  • Обработка значений blackboard в AIController'е

2. Чувства и система восприятия:

  • Perception system. Система восприятия Perception System. Чувство зрения AI_SenseSight

  • Добавление зрения к "башне"

3. Навигация. Создаем перемещающегося персонажа:

  • Создание движущегося персонажа (например, "зомби")

  • Навигационная сетка (Navigation mesh)

  • Добавляем перемещение

4. Дерево поведений:

  • Новый AI Character c оружием дальнего боя. Имеет 2 варианта поведения: патрулирование и бой с игроком.

  • Что такое дерево поведений (Behavior tree)?

  • Узлы дерева поведения

  • Вэйпоинты. Реализация состояния патрулирования

  • Переключение между режимами боя и патрулирования

Часть 5:UI, Система инвентаря, Интерактивные объекты и триггеры

1. Система UMG и виджеты:

  • Виджеты игрока

  • Полосы здоровья у врагов

  • Создаем меню

2. Экипировка. Колесо выбора:

  • Компонент EquipmentСomponent для сохранения оружия игрока

  • Колесо выбора (weapon wheel)

3. Подбираемые (pickable) и потребляемые (consumables) предметы:

  • Компонент PickableItem и блупринт поднимаемого предмета

  • Потребляемые предметы

4. Инвентарь:

  • Компонент InventoryComponent для сохранения подобранных предметов

  • Виджет инвентаря

  • Экипировка оружия из интвентаря.

  • Использования предметов из инвентаря

5. Интерактивные объекты:

  • Компонент InteractiveСomponent

  • Пример интерактивного объекта: Двери

  • Пример интерактивного объекта: Лифты }

6. Триггеры:

  • Использование триггеров для вызова врагов

Часть 6:Сеть и репликация

1. Обзор Game flow в Unreal engine. Game mode и game state:

  • UE4 game flow, класс game instance

  • Классы Game mode и game state

2. Репликационная модель в Unreal engine:

  • Клиент-серверная модель в UE

  • Режим сети и типы серверов

  • Типы репликаций

  • Сетевые роли

3. Репликация игровых механик:

  • Репликация экторов и перемещения

  • Тестирование репликации в UE4

  • Репликация здоровья игрока

  • Репликация регистрации попаданий

  • Репликация искусственного интеллекта

4. Создание многопользовательской сессии и присоединение к ней:

  • Создание сессии

  • Поиск и присоединение к сессии

Часть 7:Система сохранения в Unreal, Стриминг уровней.

1. Сохранение игры:

  • Класс USaveGame

  • Типы сохранения и загрузки (asynchronous, synchronous, binary)

  • Сохранение свойств игрока

  • Сохранение интерактивных объектов

2. Загрузка уровней:

  • Функция Open level

  • Использование open level в сетевой игре. Перемещение из лобби в другие карты

  • Сохранение текущего уровня в одиночной игре с помощью USaveGame

3. Стриминг уровней:

  • Создание persistent level

  • Использование streaming volumes для стриминга

  • Загрузка и выгрузка подуровней через C++

4. Сохранение вместе со стримингом:

  • Сохранение интерактивных объектов в выгруженном уровне

  • Загрузка состояния интерактивных объектов в загруженном уровне

Часть 8:Профилирование и оптимизация в UE4

1. Инструменты профилирования: STAT команды, Session frontend и Unreal Insights

2. Significance manager и Animation sharing:

  • Настройки производительности обновления SkeletalMesh

  • Стоимость обновления AI controller и задач поиска путей

  • Использование significance manager для оптимизации обновления персонажей

  • Использование significance manager для оптимизации анимаций персонажей

Подробная информация о курсе

Город
Онлайн
Начальный уровень
Можно изучать с нуля
Формат обучения
Онлайн
Сертификат
Есть

Подробнее о школе XYZ School

XYZ School учат всем аспектам создания игр — от концепт-арта и 3D-графики до геймдизайна и программирования. Преподаватели и инструкторы школы — действующие профессионалы индустрии: они работают в таких компаниях, как Blizzard, People Can Fly и CD Projekt Red.
  • Преимущества и недостатки обучения в XYZ School
  • Качественная обратная связь. Любые возникающие вопросы оперативно решаются.

  • Хорошая учебная программа. Все курсы структурированы, а обещанный результат выполнен.

  • Преподаватели-эксперты. Все педагоги обладают колоссальным опытом и навыками, которыми делятся с учениками.

  • Полезный материал. На курсах достаточно много нового и полезного, что поможет вам в развитии вашей карьеры в будущем!

  • Обучение на первом месте. Иногда приходится прилагать очень много сил и времени на освоение материала.

  • Самодисциплина. Без собственного желания и самомотивации вам будет сложно проходить обучение.

  • Отзывы о XYZ School

    Взгляните, что студенты и выпускники говорят про XYZ School

    • Отзыв в первую очередь посвящен всем сомневающимся, ведь именно такой была и я, когда думала о приобретении данного курса. Сейчас же я благодарна всем случайностям этого мира, которые подтолкнули меня к решению «надо брать, но это точно последний». С уверенностью говорю, что тепе...

      Показать отзыв полностью
    • Курс оказался невероятно полезен, дал отличный рывок вперед. Пройдя два бесплатных курса, купил курс Styl, который просто сокровище среди курсов. Невероятно крутые учителя. Особенно Николай Цыс!

    • 2 отзыва о XYZ School
      Мы ежедневно собираем, публикуем и обновляем отзывы об онлайн-курсах на просторах Интернета.
      Все отзывы о XYZ School →
    GAMECODE
    • XYZ School
    • 5 месяцев
    • 60 500 ₽