Release date:2022

Duration:23 h 59 m

Author:XYZ School

Skill level:Beginner

Language:Russian

Exercise files:Yes

A gameplay programmer implements the player’s experience, such as controlled transportation or grappling hooks as seen in Uncharted 4. If you enjoy tasks like these, this course is for you. Here, you will learn how to implement any mechanics in practice and do so systematically, as it is done in AAA studios. After completing the course, you will be able to create not only shooters, but games of any other genre – 2D platformer, RTS, flight simulator, fighting, or RPG.

Learn how to write code that will allow the character to move, move, shoot, and actively interact with the outside world. You will learn C++, work with Unreal Engine, set up inventory and environment, create images and weapons. Work as a game programmer in 5 months.

This course covers various aspects of Unreal Engine 4, including:

Introduction to Unreal Engine Main objects in UE C++ in UE UE4 structure, game assembly Character controller, camera, and movement Skeleton and animation Character class and basic movement Advanced movement (swimming, climbing, stairs) First person character Weapons (damage, health, pistol, machine gun, ammunition, weapon switching, shotgun, explosions, grenades, sniper rifle, knife) Artificial Intelligence (automatic tower, perception system, navigation, moving character, behavior tree, shooting enemy) Networking and replication Interactive objects and player inventory Equipment of weapons from inventory, wheel of choice Save system and level streaming UE4 optimization (profiling tools, logical loads)
Table of Contents

Part 1: Introduction

1. Course overview:

What is game logic programming

What will be taught on the course

What technologies will be used and requirements on the course

2. Installing and configuring the environment:

Installing UE4

Install Visual Studio C++ community edition

3. Create a new project:

Using the UE4 blank project template

Editor Overview

Basic Level Creation Tools

Astors and static meshes

BSP brushes and working with them

Simple Grid Material

4. C++ in Unreal Engine:

For those who are new to C++: why 2 files (.h and .cpp)

object model. Classes UObject, AActor, UActorComponent

Reflection system in UE4: UPROPERTY(), UFUNCTION() etc.

One more point for those who are new to C++: what are pointers and how they are used.

5. Assembling the game:

Visual studio solution: engine (UE4) and game projects.

Build configurations (DebugGame Editor, Development editor, DebugGame, Development, Shipping)

Making changes to the code and loading them with the editor (full rebuild vs. hot reload vs. live coding)

Assembly and packaging (packaging) of the game.

6. Setting up the remaining environment: task tracker and version control system:

Perforce as the version control system of choice. Overview of other options – git, SVN, Plastic SCM

Jira and Trello issue trackers

Part 2: Creating a character from scratch in C++. Input handling, character movement and animation system in Unreal Engine.

1. ACharacter and UCameraComponent classes:

AActor and Pawn classes in UE4

Camera component

2. Input processing and simple movement. Movement Component:

Input tables, input actions and input axis

Movement component and movement modes

UInputComponent and Input Handling

3. Character animations. Anim Instance class and Animation blueprint:

Skeletal meshes

Animation sequence and animation montage

4. Implementation of jump, squat and run:

We process input (pressing “space”, “ctrl”, “sprint”)

We call the appropriate method on the character

Animation support

Part 3: Weapons

1. Melee weapon:

Import weapon model

Creating the BaseWeapon and MeleeWeapon Classes

Equipping a weapon with a character. Attachment to slots.

Attack with a melee weapon. Input handling and animation.

Hit capsule and hit tests

Applying impact to objects

Additional animations

2. Ranged weapon basics: hit scan:

Import of ranged weapon model: weapon + magazine

Implementation of shooting mechanics

Hit registration via hit scan.

Adding visual effects

3. Ranged weapons: ammunition, rate of fire, aiming (ADS):

Ammunition

Automatic fire

Aiming down (ADS)

4. Ranged Weapons: Shotguns:

Shotgun hit registration – cone of destruction, multiple hit-scans)

Shotgun reload

5. Registration of hits through projectiles (“projectiles” – projectiles):

Complex ballistics (gravity and ricochet)

Projectile movement component

6. Explosions:

Create an exploding Actor – a barrel

Explosion zone. Explosion Damage Registration

Dealing damage and adding momentum

7. Grenades:

Create a grenade

Throwing a grenade (character animation)

Grenade Trajectory – Bounce Handling

grenade timer

Part 4: NPC artificial intelligence. AI characters. AI Controllers, Blackboards, Navigation and Behavior Tree

1. Creation of a “stationary” NPC – a tower:

Creating the AICharacter and AIAnimationInstance classes

AIcontroller and TeamID

Blackboard. Installing an enemy in the blackboard. (on hit in radius)

Handling blackboard values in AIController

2. Feelings and system of perception:

perception system. Perception System. Sense of sight AI_SenseSight

Adding vision to the “tower”

3. Navigation. Create a moving character:

Creating a moving character (e.g. “zombie”)

Navigation mesh

Adding movement

4. Behavior tree:

New AI Character with ranged weapons. It has 2 behaviors: patrol and fight with the player.

What is a behavior tree?

Behavior Tree Nodes

Waypoints. Implementing the Patrol State

Switching between combat and patrol modes

Part 5: UI, Inventory System, Interactive Objects and Triggers

1. UMG system and widgets:

Player Widgets

Enemy health bars

Create a menu

2. Equipment. Selection wheel:

The EquipmentComponent component for saving the player’s weapons

Selection wheel

3. Pickable and consumables items:

PickableItem Component and Pickable Item Blueprint

Consumable Items

4. Inventory:

InventoryComponent for saving picked up items

inventory widget

Equipping weapons from inventory.

Using items from inventory

5. Interactive objects:

InteractiveComponent component

Example of an interactive object: Doors

Example of an interactive object: Elevators }

6. Triggers: Using triggers to summon enemies

Part 6: Networking and replication

1. Overview of Game flow in Unreal engine. Game mode and game state:

UE4 game flow, game instance class

Game mode and game state classes

2. Replication model in Unreal engine:

Client-server model in UE

Network mode and server types

Replication types

Network Roles

3. Replication of game mechanics:

Actor replication and movement

Testing replication in UE4

Player health replication

Hit registration replication

Artificial intelligence replication

4. Creating a multi-user session and joining it:

Session creation

Finding and joining a session

Part 7: Unreal save system, level streaming.

1. Saving the game:

USaveGame class

Save and load types (asynchronous, synchronous, binary)

Saving player properties

Saving interactive objects

2.Loading levels:

Open level function

Using open level in a network game. Move from lobby to other maps

Saving the current level in a single player game with USaveGame

3. Streaming levels:

Create a persistent level

Using streaming volumes for streaming

Loading and unloading sublevels via C++

4. Saving with streaming:

Saving interactive objects in the unloaded level

Loading the state of interactive objects in a loaded level

Part 8: Profiling and optimization in UE4

1. Profiling tools: STAT commands, Session frontend and Unreal Insights

2. Significance manager and Animation sharing:

SkeletalMesh update performance settings

AI controller upgrade cost and pathfinding tasks

Using Significance Manager to Optimize Character Updates

Using Significance Manager to Optimize Character Animations
1_введение в Unreal Engine 1_основные объекты в UE

Actors and components Блупринты Вступительное слово коллизии Практика Blueprints Статическая геометрия Функция Tick Чуть более продвинутая практика BP

2_с++ в UE

DataTable, DataAsset, CurveFLoat UObject и Garbage Collection Вступительное слово Работаем с новым Actor_ом Система рефлексии UE4 События и делегаты Создаем свой первый C+ класс

3_структура UE4, сборка игры

GameInstance Вводное слово (1) Знакомство с GameplayFramework Миграция ассетов_1 Модули и Unreal Build Tool_1 Переименование ассетов и классов Полезные инструменты левел-дизайнера_1 Сборка Unreal Engine из исходного кода Сборка игры_1_1 Создание (Spawn) Actor_ов в мире

2_персонаж контроллер камера и передвижение 1_3D чарактер камера и контрол

Введение Добавялем гравитацию и прыжок (1) Логирование Работа с камерами Создаем свою “пешку” с обложкой новое Создание Pawn Movement Component

2_скелет и анимация

01 Виды анимаций Что такое скелетная анимация 02 Импорт скелетной геометрии 03 Анимационный блупринт 04 State machine 05 Создаем свой AnimInstance в C 06 Инверсная кинематика – Ч1 07 Инверсная кинематика ч2

3_класс чарактер и базовое перемещение

Бег часть 1 Бег часть 2 Вступление Настриаваем базовые анимации Приседание Создаем блупринт персонажа Создаем классы для персонажа

4_продвинутое перемещеине плавание

01 Плавание часть 1 – Физические объемы, управление (3) Анимация размер капсулы пост процессинг

5_продвинутое перемещение клаймбинг

Climbing. Анимационные монтажи Climbing. Введение Climbing. Контрольные команды. Отладочные категории. Подсистемы часть 1 Climbing. Контрольные команды. Отладочные категории. Подсистемы часть 2 Climbing. Корректировка перемещения Climbing. Низкие уступы Climbing. Новый канал коллизии Climbing. Обработка ввода Climbing. Определение выступов часть 1 Climbing. Определение выступов часть 2 Climbing. Отладочная отрисовка Climbing. Перемещение персонажа часть 1 Climbing. Перемещение персонажа часть 2 Climbing. Рефакторинг отладочной отрисовки часть 1 Climbing. Рефакторинг отладочной отрисовки часть 2 Climbing. Синхронизация перемещения и анимаций

6_продвинутое перемещение лестницы

01_Лестницы Введение 02_Лестницы. Класс интерактивных объектов 03_Лестницы Класс лестниц 04_Лестницы Создаем элементы лестницы в OnConstruction методе 05 Лестницы Настраиваем класс интерактивных объектов 06_Лестницы Перемещение вдоль лестниц 07_Лестницы Корректировка перемещенияmp4 08_Лестницы Анимации 09_Лестницы Прикрепление к лестнице сверху – новая зона взаимодествия 10_Лестницы Прикрепление к лестнице сверху – анимации 11_Лестницы Прыжок с лестницы 12 Bonus – Arrays

7_ферст персон чарактер

01 Введение 02 Добавляем нужные ассеты 03 Создаем класс FP игрока 04 Создаем Idle анимацию 05 Создаем Blueprint персонажа 06 Прикрепляем камеру к сокету FP Mesh Component 07 Новый скелет 08 Приседание от первого лица 09 Подтягивание от первого лица часть 1 – запуск монтажей 10 Подтягивание от первого лица часть 2 – управление камерой 11 Лестницы от первого лица 12 Анимация стрейфа

3_оружие 1_урон и здоровье

01 Концепция урона в UE4 02 Здоровье персонажа 03 Смерть 04 Ragdoll и AnimNotify 05 Урон от падения

2_пистолет

00 Private include paths 01 Импорт ассетов 02 Создаем базовые классы 03 Blueprint пистолета 04 Анимации персонажа 05 Aim offset 06 Регистрация попадания часть 1 07 Регистрация попадания часть 2 08 Анимации 09 Эффекты введение 10 Эффект дульной вспышки 11 Эффект следа от пуль

3_автомат

01 Импорт ассетов 02 Blueprint автомата 03 Bugfix следа от пуль 04 Анимации персонажа 05 Fabrik 06 Автоматическая стрельба 07 Декали 08 Разброс пуль 09 Прицеливание часть 1 – Анимации 10 Прицеливание часть 2 – Логика 11 Прицеливание часть 3 – FOV

4_аммуниция переключение оружия интерфейс

01 Введение в интерфейс 02 Шкала здоровья 03 Прицел часть 1 04 Прицел часть 2 05 Патроны в оружии 06 Виджет патронов 07 Амуниция 08 Перезарядка 09 Анимация перезарядки 10 Переключение оружия часть 1 – слоты экипировки 11 Переключение оружия часть 2 – данные 12 Переключение оружия часть 3 – Анимации

5_дробовик

00 Intro_V10 01 Импорт ассетов_V10 02 Блупринт дробовика_V10 03 Регистрация попаданий дробовика 04 Перезарядка дробовика 05 Багфикс перезарядки 06 Скорострельность дробовика 07 Добавляем импульс

6_взрывы и гранат

00 Введение 01 Импорт Ассетов 02 Компонент взрыва 03 Взрывающаяся Бочка 04 Граната Интро 05 Класс снаряда (проджектайла) 06 Класс ThrowableItem 07 Модифицируем EquipmentComponent 08 Анимационный нотификатор 09 Блупринт ThrowableItem 10 Взрывающиеся снаряды 11 Угол и позиция броска 12 События Equip-Unequip

7_снайперская винтовка

00 Intro 01 Создаем блупринт оружия 02 Стрельба снарядами 03 Bullet blueprint 04 Регистрация попадания через снаряды 05 Модифицируем виджет прицела 06 Тип прицела у EquipableItem (в коде) 07 Видимость виджетов

8_нож

00 Knives Intro 01 Добавляем ассеты 02 Рефакторинг EquipableItem 03 Класс MeleeWeaponItem 04 Блупринт ножа 05 Компонент регистрации попаданий 06 Поддержка регистрации попаданий в классе MeleeWeapon 07 Нотификатор включения и выключения регистрации попаданий 08 Финальная настройка 09 Багфикс анимаций

4_искусственный интелект 1_автоматическая башня. система восприятия

00 Введение_v0 01Класс башни_v2 02 Blueprint башни_v1 03 AIController и AIPerception_v0 04 Класс AITurretController_v1 05 Отслеживание целей турелей_v1 06 Стрельба турели 07 Система свой-чужой

2_навигация. движущийся персонаж

00 Введение_v0 01 Блупринт персонажа v2 02 Рефакторинг AITurretController_V11 03 Класс AICharacterController 04 Генерация навигационной сетки_v0 05 RecastNavMesh и навигационные агенты_v0 06 Маршрут патрулирования_v1 07 Поддержка патруллирования в AICharacterController_v0 08 Настройка патруллирования в редакторе_v2 09Navigation link_v1

3_дерево поведений. стреляющий враг

00 Введение_V10 01 Blackboard – память AI_V10 02 Дерево поведений_V10 03 Task нахождения позиции_v1 04 Декортаоры_v1 05 Добавляем оружие к AI_v1 06 Service стрельбы v1 07 Поддержка AI в классе оружия v1 08 Добавляем стрельбу в дерево поведений v1

5_сеть и репликация 1_введение в репликацию

00 Интро_v1 01 Что такое репликация_v1 02 Исмпорт ассетов_v1 03 Запуск многопользовательской сессии_v1 04 Репликация свойств_v1 05Вызов удалённых процедур NetMulticast_v1 06 Вызов удалённых процедур – Server v1 07 Вызов удалённых процедур – Client v1 08 Репликация перемещения v1

2_репликация персонажа

00 Intro v2 01 Репликация бега v1 02 Репликация подтягивания v1 03 Репликация смены оружия v1 04 BugFix AimOffset_V10 05 Репликация выстрелов часть 1 – WeaponBarellComponent_V10 06 Репликация выстрелов часть 2 – SetAutonomousProxy и прочее_v10 07 Репликация урона_v1 08 Репликация снарядов_v1 09 Репликация ИИ_v1

3_создание и присоединение к онлайн сессии

00 Интро_v1 01 Подключение онлайн подсистемы_v1 02 Создание сессии v1 03 Поиск сессии v1 04Присоединение к сессии_v1 05 Уничтожение сессии и обработка ошибок_v10 06 Основное меню – код_v10 07 Основное меню – блупринт_V10 08 Виджет создания сессии – код_V10 09 Виджет создания сессии – блупринт_v1 10 Виджет поиска сессии – код v1 11 Виджет поиска сессии – блупринт_V10 12 Тестирование и запуск_v1

6_взаимодействие с объектами и инвентарь игрока 1_интерактивные объекты

00 Интро_v1 01 Интерфейс IInteractable_v1 02 Поиск по линии взгляда_v1 03 Класс двери_v1 04 Блупринт двери_v10 05 Виджет интерактивных объектов – код v10 06 Блупринт виджета интерактивных объектов_v10 07 Вызов врагов v10 08 Подписка на события взаимодействия_v1 09 Виджет здоровья противника_v1

2_инвентарь

00 Intro_v1 01 Класс подбираемого объекта v1 02 Подбираемое оружие_v10 03 Подбираемое оружие – данные_v10 04 Интерлюдия_V10 05 Класс объекта инвентаря_v1 06 Компонент инвентаря часть 1_v1 07 Компонент инвентаря часть 2_v1 08 Виджет слота инвентаря v1 09 Виджет инвентаря v1 10 Подбираемые в инвентарь предметы v1 11 Аптечка и адреналин_v1 12 Аптечка и адреналин данные_v1 13 Блупринты виджетов инвентаря_v1

3_экипировка оружия из инвентаря

00 Интро_v0 01 Класс оружия в инвентаре_v1 02 Расширяем класс экипировки_v1 03 Виджет слота экипировки_v1 04 Виджет экипировки_v1 05 Настраиваем данные_v1

4_колесо выбора

00 Интро_v0 01 Материал колеса выбора_v1 02 виджет колеса выбора – код_v1 03 Поддержка нового виджета v2 04 Настройка блупринтов v1

7_система сохранений и стриминг уровней 1_система сохранений

00 Интро_v0 01 Структура SaveData_v1 02 Вспомогательные типы для системы сохранения_v1 03 Интерфейс ISaveSubsystemInterface_V10 04 Подсистема сохранений_v1 05 Сохранение позиции персонажа_v1 06 Сохранения состояния двери_v1 07 Сохранение компонент_v1 08 Bigfix десериализации Standalone приложения_v1

2_стриминг уровней

00 Game Code Интро_V10 01 Game Code Создание подуровней_V10 02 Game Code Создание классов_V10 03 Класс StreamingSubsystemVolume v1 04 Game Code Менеджер стриминг уровня_V10 05 Подсистема стриминга v1 06 Настариваем стриминг в редакторе v1 07 Сохранение стриминг уровней v1

8_оптимизация в UE4 1_инструменты профилирования и логические лоды

01 STAT команды и Session fronted_v1 02 Unreal Insights_v1 03 Оптимизация Tick функции_v1 04 Significane manager_v1 05 Тестирование логических лодов_v1

9_стримы 1_интро

Welcome_2021-08-16 19-00-28

2_работа с перфорс

Game Code. Руководство по работе с Perforce и Swarm GameCode Ещё раз про перфорс советы по сдаче домашних работ

3_гостевые и совместные стримы

Game Code. Александр Пирогов о Rider for Unreal Engine 2020.3_ новые фичи и возм Game Code. Александр Пирогов. Профессия Tool программист Game Code. Леонид Горбачев. Использование UE4 для создания экономической стратег GameCode+Game Design ГД и Нарративщик о Квест-системе GameCode+Game Design Файт-система и хит реакции GameCode. Взаимодействие геймдизайнера и программиста Q&A стрим Environmert Art Стрим с Сашей Балакшиным (2907)

4_уе4

2021-07-28 18-59-43 Weapon recoil GameCode Перевод эффектов из Cascade в Niagara GameCode Работа с sequencer и анимациями GameCode. Blueprint component GameCode. Документация кода GameCode. Ещё раз об отладке. Методы и различные полезные фишки Gameplay Ability System Hit reactions 2021-08-13 19-02-04 Impact FX_2021-08-20 18-53-47 TurnAnimations_2021-08-21 17-58-19

5_куа по курсу и разбор дз

Game Code. Ответы на вопросы по лекционным разделам Game Code. Ответы на вопросы по разделам 1 и 2 первого блока 2.0 Game Code. Ответы на вопросы по разделам 1 и 2 первого блока GameCode. Q&A стрим с разбором домашки по инверсной кинематике GameCode.Ответы на вопросы по лекционным разделам Q&A Ползанье 2021-03-19

6_прочее

Game Code. Пайплайны и особенности работы геймплей программиста на ААА проекте 2 Game Code. Пайплайны и особенности работы геймплей программиста на ААА проекте GameCode. Вопросы на собеседовании. C GameCode. Вопросы на собеседовании. Архитектура машин GameCode. Вопросы на собеседовании. Математика

9_стримы.7z.001.rar 9_стримы.7z.002.rar 9_стримы_audio_orig_Subtitles.7z

[XYZ School] Gamecode.7z.rar [XYZ School] Gamecode_Subtitles.7z

  Channel    and      Group

下载说明:用户需登录后获取相关资源
1、登录后,打赏30元成为VIP会员,全站资源免费获取!
2、资源默认为百度网盘链接,请用浏览器打开输入提取码不要有多余空格,如无法获取 请联系微信 yunqiaonet 补发。
3、分卷压缩包资源 需全部下载后解压第一个压缩包即可,下载过程不要强制中断 建议用winrar解压或360解压缩软件解压!
4、云桥网络平台所发布资源仅供用户自学自用,用户需以学习为目的,按需下载,严禁批量采集搬运共享资源等行为,望知悉!!!
5、云桥网络-CG数字艺术学习与资源分享平台,感谢您的关注与支持!