# Unreal Engine — полное руководство по разработке на С++

## Ссылки

{% embed url="<https://www.udemy.com/course/unrealengine/?referralCode=1DEBE7F013238C387B46>" %}

{% embed url="<https://life-exe.itch.io/shoot-them-up>" %}

## Промо видео

{% embed url="<https://youtu.be/6DM1iGw0kWM>" %}

## Описание

В данном курсе вы научитесь программировать на **C++** под **Unreal Engine**.

Мы начнем с основ **С++** в **Unreal Engine** и подробно разберем архитектуру фреймворка. Рассмотрим всю базу, которая необходима для воплощения собственных идей в жизнь в **Unreal Engine**.

Основной проект курса — шутер от третьего лица **ShootThemUp**, который мы последовательно будем разрабатывать, погружаясь в различные подсистемы и детали движка. Вместе мы рассмотрим все ключевые концепты и напишем очень много кода на **C++**. В каждом разделе курса будут домашние задания и тесты для закрепления пройденного материала. В конце каждой главы мы будем производить рефакторинг, повышая качество и чистоту нашего кода, и упаковывать игру.

К концу курса у нас будет полноценная игра, багаж знаний пополнится всем необходимым для комфортного использования **C++** в **Unreal Engine**, а понимание работы движка будет совершенно на другом уровне. В дальнейшем вы сможете развивать полученные навыки в интересующем вас направлении, создавать игры и реализовать все идеи самостоятельно.

Курс разработан под последнюю версию **Unreal Engine 4.26**. Проекты курса совместимы с **Unreal Engine 5.**

В курсе мы разберем следующие темы:

* Unreal Framework: основные классы, типы, макросы, делегаты, property system
* Компилирование проекта: modules, targets
* Сборщик мусора (garbage collector)
* Компонентная модель Unreal Engine
* Программирование анимаций: стейт машина, FABRIK, anim notifies
* UMG: пользовательские интерфейсы
* Визуальные эффекты Niagara
* Обработка коллизий
* Физические материалы
* Postprocessing
* Искусственный интеллект: деревья поведения, таски, сервисы, декораторы, EQS
* AI компонент восприятия противников
* Управление звуком: SoundCue, SoundClass, SoundMix, Attenuation settings
* Контролирование процесса игры: GameMode, PlayerState, GameInstance
* Динамическая подгрузка уровней

**Unreal Engine** востребован в различных современных индустриях: игры, мобильные приложения, симуляторы, образование, архитектура, дизайн, **VR/AR/XR**, кинопроизводство. Знание **C++** на порядок увеличит вашу конкурентную способность на рынке.

Используя **C++**, можно реализовать совершенно любую идею. Вы не ограничены в своих возможностях — вы создаете эти возможности сами.

## Для кого этот курс

* Начинающие и среднего уровня разработчики **Unreal Engine**
* Blueprint программисты, которые хотят научиться разрабатывать на **C++**
* Разработчики под другие движки (**Unity3D, CryEngine, Godot** и т.д.), желающие освоить **Unreal Engine**
* Если у вас нулевой опыт программирования, курс может показаться сложным. Рекомендую начать с основ **C++**

## Минимальные требования

* Базовые знания одного из объектно-ориентированных языков программирования: **C++, C#, Java, Python** (или уверенное владение **blueprint scripting**)
* Минимальные знания **Unreal Editor**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lifeexe-art.gitbook.io/snakegame/moi-kursy/unreal-engine-polnoe-rukovodstvo-po-razrabotke-na-s++.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
