- Unreal Engine Collision
- Типы коллизии
- Collision Presets в Unreal Engine
- Collision Enabled
- Основные пресеты коллизий в Unreal Engine
- Как создать пользовательский Collision Preset в Unreal Engine
- Функции для работы с коллизией в Unreal Engine
- Get Collision — возврат состояния коллизии
- Set Collision — установка состояний коллизии
- Функции Is — проверка коллизии
- Event Overlap — события пересечения коллизии
- Add Collision Component
- Hit Result
- Get Array Overlap
- Move
- Line Trace
- Sphere Trace
- Box Trace
- Capsule Trace
Друзья, приветствую, с Вами Будуев Антон. В данной статье мы разберём Collision в Unreal Engine или, иначе говоря, коллизии объектов в движке Анрил Энджин (UE4 и UE5). Поговорим в целом о том, что такое коллизия, рассмотрим её типы и пресеты. А также разберём большинство функций, позволяющих в игровом движке работать с коллизией объектов.
Вскоре выйдет моя бесплатная книга по Blueprints для Unreal Engine в PDF формате. Как она выйдет, рекомендую её скачать, чтобы Вы детально изучили блюпринты Анрил Энджин.
Unreal Engine Collision
Collision (коллизия, столкновение) в Unreal Engine — это упрощённая геометрическая модель объекта, повторяющая его исходную трёхмерную модель (Mesh), но содержащая меньшее количество полигонов. Коллизия необходима для отслеживания пересечений и столкновений объектов друг с другом, а также для настройки правил их взаимодействия, предотвращая их прохождение друг сквозь друга и создавая либо физическое взаимодействие, либо запуская определённые процессы в коде самих объектов.
Поскольку геометрическая модель коллизии объекта упрощена по сравнению с его исходной 3D-моделью, игровой движок затрачивает гораздо меньше ресурсов на обработку взаимодействий между объектами. Правильное использование коллизии обеспечивает реалистичное поведение объектов, учитывая физические законы, при этом не требуя значительных ресурсов.

Коллизия может быть заложена в трёхмерную модель на этапе её создания в специализированных редакторах, таких как Maya или Blender. Также её можно добавить непосредственно в самом движке Unreal Engine, используя как ручные, так и автоматические инструменты.
Важно понимать, что коллизия в Анрил Энджин содержится только в нескольких Components (компонентах), таких как:
- Static Mesh Component;
- Skeletal Mesh Component;
- Collision Component (Box, Sphere, Capsule);
- Geometry Collection;
- и в некоторых других компонентах.
То есть, на самом деле, в самих объектах Actor, Pawn и других объектах в UE5 (UE4) коллизий нет. Всё, что мы видим в этих объектах, — это Collision их компонентов. Иначе говоря, Collision объекта представляет собой совокупность коллизий его внутренних компонентов.
Типы коллизии
В Unreal Engine для Static Mesh существует два типа коллизии, которые разработчики могут использовать для определения взаимодействия объектов в игровом мире:
- Simple (простая);
- Complex (сложная).
В Skeletal Mesh применяется другой тип коллизии на основе физических тел и их ограничений, описанных в специальном ассете Physics Assets. Также эту физическую коллизию ещё называют Ragdoll или «тряпичная кукла» (применяется для человекоподобных персонажей).
Детальное описание «тряпичной куклы» с разбором всех её параметров и примерами кода Вы можете изучить в статье: Unreal Engine Ragdoll.
Simple Collision (простая форма столкновения) — базовый тип коллизии, в которой для определения границ столкновения объектов используются геометрические примитивы, такие как кубы, сферы, капсулы и выпуклые оболочки.
Эти формы являются менее ресурсоемкими по сравнению со сложными Mesh и отлично подходят для создания коллизий для динамических объектов и элементов окружения, где высокая точность не требуется. Они просты в реализации, обеспечивают быструю проверку столкновений и пересечений, жертвуя точностью ради скорости вычислений. В результате чего используют меньше вычислительных ресурсов, что повышает общую производительность.

Complex Collision (сложная форма столкновения) — представляет собой более продвинутый метод обработки коллизий, который способствует более точному взаимодействию объектов в игре. Данная коллизия создаётся движком автоматически, используя оригинальную геометрию трёхмерных моделей Mesh, чтобы обеспечить максимальную точность в определении границ объектов. Это означает, что коллизия определяется на основе всех треугольников (полигональных сеток), которые составляют объект, что позволяет получить более сложное и точное взаимодействие с игровым пространством.

Более подробно об этих типах коллизии Вы можете узнать в отдельной статье: Simple и Complex Collision.
Collision Presets в Unreal Engine
Для упрощения работы с коллизиями объектов при настройке их взаимодействия друг с другом в Unreal Engine существуют готовые пресеты коллизий. Доступны они во вкладке Details в разделе Collision / Collision Presets, но только в тех компонентах, у которых имеется сама коллизия (Static Mesh, Skeletal Mesh, Box, Sphere, Capsule Collision).
Collision Presets (пресеты коллизий) — группа предустановленных правил для настройки режимов коллизии (Collision Enabled), установления типа объекта с точки зрения коллизии (Object Type) и его ответной реакции на взаимодействие с другими объектами (Collision Responses: Block, Overlap или Ignore).

Иначе говоря, Collision Presets — это предустановленные настройки коллизий, которые позволяют разработчикам быстро и удобно управлять взаимодействиями между объектами в игровом мире. Эти пресеты определяют, как объекты реагируют на столкновения и трассировки, и могут значительно упростить процесс настройки коллизий, особенно в крупных проектах.
Типы объектов и ответные реакции мы разбираем в отдельной статье: Object Type и Collision Responses в Unreal Engine. Сейчас же сосредоточимся на режимах коллизии и разборе самих пресетов.
Collision Enabled
Collision Enabled — режимы работы коллизии текущего объекта. Настраиваются они во вкладке Details в разделе Collision / Collision Presets.

На выбор пользователя в Unreal Engine представлены следующие варианты режимов работы коллизии:
- No Collision — коллизия полностью отключена. Объект вообще не будет участвовать во взаимодействиях с другими типами объектов, игнорируя все столкновения и пересечения.
- Query Only — у коллизии включена только обработка запросов. Объект будет реагировать только на запросы к коллизии, поданные из кода (Blueprint, C++) и не будет реагировать на физические столкновения (физическую симуляцию).
- Physics Only — у коллизии включена только физика. Объект будет реагировать только на физические столкновения, но не будет учитываться при запросах, например, при трассировке.
- Collision Enabled (Query and Physics) — коллизия полностью включена, будет обрабатывать как запросы, так физическую симуляцию. То есть, текущий объект будет реагировать как на физические столкновения, так и на любые запросы к коллизии из кода, например, при трассировках.
- Probe Only — коллизия включается только для проверки (оценки) потенциального физического столкновения с получением информации об этом потенциальном столкновении, но без самого физического столкновения. Запросы к коллизии также в этом режиме не работают.
- Query and Probe — коллизия включается как для проверки (оценки) потенциального физического столкновения, так и для запросов с получением информации об этом потенциальном столкновении, но без самого физического столкновения.
Теперь рассмотрим сами пресеты, доступные в движке по умолчанию.
Основные пресеты коллизий в Unreal Engine
В Unreal Engine доступно достаточно много предустановленных пресетов коллизий, которые можно использовать в своей работе. Пресеты доступны в компонентах коллизий во вкладке Details в разделе Collision / Collision Presets.

Разберём каждый из пресетов (в каждом из пресетов используется тот или иной тип объекта, узнать подробнее о которых, Вы можете в статье: Object Type):
- Custom — позволяет настроить собственные правила взаимодействия текущего объекта (если стандартные пресеты не подходят), выбирая режим работы коллизии, тип объекта и его ответные реакции (Block, Overlap или Ignore) на другие типы объектов.
- No Collision — коллизия полностью отключена. Объект вообще не будет участвовать во взаимодействиях с другими Object Type, игнорируя все столкновения и пересечения.
- Block All — объекту назначается тип World Static, его коллизия полностью включена. При этом он будет блокировать все другие Object Type. Часто применяется для создания статичных объектов, которые не пропускают других объектов (стены, пол, другие твёрдые поверхности).
- Overlap All — объекту назначается тип World Static, его коллизия работает только для запросов. При этом объект будет пересекаться со всеми другими Object Type, вызывая события при пересечении (если включена соответствующая настройка), и не будет блокировать их. Обычно используется для создания статичных объектов, которые должны пропускать другие объекты сквозь себя, но при этом регистрировать пересечения и запускать соответствующие события (например, для триггеров или зон обнаружения).
- Block All Dynamic — объекту назначается тип World Dynamic, его коллизия полностью включена. При этом он будет блокировать все другие типы объектов. Обычно используется для создания динамичных объектов, которые не пропускают других объектов, сталкиваясь с ними (платформы, снаряды). А также перемещаются под воздействием физики.
- Overlap All Dynamic — объекту назначается тип World Dynamic, его коллизия работает только для запросов. При этом объект будет пересекаться со всеми другими Object Type, вызывая события при пересечении (если включена соответствующая настройка), и не будет блокировать их. Часто применяется для создания динамичных объектов, которые должны пропускать другие объекты сквозь себя, но при этом регистрировать пересечения и запускать соответствующие события.
- Ignore Only Pawn — объекту назначается тип World Dynamic, его коллизия работает только для запросов. При этом он будет блокировать все другие Object Type, кроме двух, которые полностью будет игнорировать — Pawn и Vehicle. Часто применяется к декорациям, которые должны игнорироваться игроками, но могут мешать другим объектам.
- Overlap Only Pawn — объекту назначается тип World Dynamic, его коллизия работает только для запросов. При этом он будет блокировать все другие Object Type, кроме трёх: Pawn и Vehicle — с ними будет пересекаться, а канал Trace Camera игнорировать.
- Pawn — объекту назначается тип Pawn, его коллизия полностью включена. При этом он будет блокировать все другие Object Type, кроме канала Trace Visibility, его он будет игнорировать. Обычно использоваться для капсулы коллизии любого игрового персонажа или ИИ.
- Spectator — объекту назначается тип Pawn, его коллизия работает только для запросов. При этом он будет игнорировать все другие типы объектов, кроме типа World Static, которого он будет блокировать. Обычно используется для персонажа в режиме стороннего наблюдения за игрой.
- Character Mesh — объекту назначается тип Pawn, его коллизия работает только для запросов. При этом он будет блокировать все другие типы объектов, кроме типов Pawn и Vehicle, а также канала Trace Visibility, их он будет игнорировать. Обычно используется для Mesh персонажа.
- Physics Actor — объекту назначается тип Physics Body (физическое тело), его коллизия полностью включена. При этом он будет блокировать все другие Object Type. Обычно используется для объектов симулирующих физику. Например, падающие ящики или предметы, которые можно толкнуть.
- Destructible — объекту назначается тип Destructible (разрушаемый), его коллизия полностью включена. При этом он будет блокировать все другие типы объектов. Обычно используется для разрушаемых объектов.
- Invisible Wall — объекту назначается тип World Static, его коллизия полностью включена. При этом он будет блокировать все другие типы объектов, кроме канала Trace Visibility, его он будет игнорировать. Обычно используется для создания невидимых статичных объектов, которые не пропускают других объектов (невидимая стена).
- Invisible Wall Dynamic — объекту назначается тип World Dynamic, его коллизия полностью включена. При этом он будет блокировать все другие Object Type, кроме канала Trace Visibility, его он будет игнорировать. Обычно используется для создания невидимых динамичных объектов, которые не пропускают других объектов.
- Trigger — объекту назначается тип World Dynamic, его коллизия работает только для запросов. При этом объект будет пересекаться со всеми другими объектами, вызывая события при пересечении (если включена соответствующая настройка), и не будет блокировать их, кроме канала Trace Visibility, его он будет игнорировать. Часто применяется для триггерных объемов (Trigger Volume).
- Ragdoll — объекту назначается тип Physics Body (физическое тело), его коллизия полностью включена. При этом он будет блокировать все другие типы объектов, кроме типа Pawn и канала Trace Visibility, их он будет игнорировать. Обычно используется для объектов персонажей в определённый момент, когда необходима имитация физики тела.
- Vehicle — объекту назначается тип Vehicle, его коллизия полностью включена. При этом он будет блокировать все другие Object Type. Обычно используется для объектов транспортных средств.
- UI — объекту назначается тип World Dynamic, его коллизия работает только для запросов. При этом объект будет пересекаться со всеми другими объектами, вызывая события при пересечении (если включена соответствующая настройка), и не будет блокировать их, кроме канала Trace Visibility, его он будет блокировать. Обычно используется для объектов пользовательского интерфейса.
Как создать пользовательский Collision Preset в Unreal Engine
Кроме использования стандартных пресетов, в Unreal Engine также можно создавать и свои пользовательские пресеты коллизий.
Создаются пользовательские Collision Preset в настройках проекта Edit / Project Settings, в разделе Engine / Collision, в подразделе Preset. Добавить свой пользовательский пресет можно, нажав на кнопку New. После, в небольшом открывшемся окошке New Profile необходимо указать Name (название пресета), Collision Enabled (режим работы коллизии), Object Type (тип объекта), Description (описание Вашего пресета) и Response (ответы Block, Overlap или Ignore) для каждого из типов объектов. Там же, в этом же разделе Preset, находятся все дефолтные пресеты, встроенные в движок. Нажав на каждый из которых, Вы можете внести в них правки. Но лучше, конечно, в дефолтные пресеты изменений никаких не вносить.

Функции для работы с коллизией в Unreal Engine
Get Collision — возврат состояния коллизии
- Get Actor Enable Collision — возвращает текущее состояние коллизии (включена/отключена) для всего Актора в целом.
- Get Collision Enabled — возвращает режим работы коллизии текущего компонента.
- Get Collision Object Type — возвращает тип объекта коллизии текущего компонента.
- Get Collision Profile Name — возвращает название пресета (профиля) коллизии для текущего компонента.
- Get Collision Response to Channel — возвращает тип ответной реакции текущего компонента по выбранному каналу коллизии.
- Get Component Bounds — возвращает ограничивающий объем (bounding box) компонента. Ограничивающий объем — это прямоугольный параллелепипед (Box) или сфера (Sphere), который полностью содержит компонент. Эта функция предоставляет информацию о размере и положении компонента в игровом мире.
Set Collision — установка состояний коллизии
- Set Actor Enable Collision — включает/выключает коллизию для всего Актора в целом.
- Set Collision Enabled — включает/выключает коллизию, устанавливает тип режима работы коллизии: No Collision, Query Only, Physics Only, Collision Enabled (Query and Physics), Probe Only, Query and Probe.
- Set Collision Object Type — устанавливает для текущего компонента новый канал объекта коллизии: World Static, World Dynamic, Pawn, Physics Body, Vehicle, Destructible или другой пользовательский канал.
- Set Collision Profile Name — устанавливает новый пресет (профиль) коллизии для текущего компонента. Опцией Update Overlap даёт возможность обновить пересечения в соответствии с правилами нового пресета.
- Set Collision Response to Channel — устанавливает для текущего компонента по конкретному каналу объекта коллизии новую ответную реакцию: Block, Overlap, Ignore.
- Set Collision Response to All Channel — устанавливает для текущего компонента по всем каналам коллизии новую ответную реакцию: Block, Overlap, Ignore.
Функции Is — проверка коллизии
- Is Collision Enabled — возвращает информацию, включена ли у текущего компонента коллизия (запросы или физика).
- Is Overlapping Actor (Target is Actor) — возвращает информацию, пересекается ли какой-либо компонент текущего Актора с каким либо другим компонентом другого Актора.
- Is Overlapping Actor (Target is Primitive Component) — возвращает информацию, пересекается ли заданный компонент с каким либо другим компонентом другого Актора.
- Is Overlapping Component — возвращает информацию, пересекается ли заданный компонент с другим компонентом.
- Is Physics Collision Enabled — возвращает информацию, включена ли у текущего компонента коллизия для физической симуляции.
- Is Query Collision Enabled — возвращает информацию, включена ли у текущего компонента коллизия для запросов.
Event Overlap — события пересечения коллизии
- Event Hit — событие вызывается в момент столкновения текущего Актора с другим объектом или же в момент столкновения другого объекта с текущим Актором (в момент столкновения их коллизий). При столкновении возвращает информацию, характеризующую данное столкновение.
- Event Actor Begin Overlap — событие вызывается при начале пересечения текущего Актора с другим объектом (в момент перекрытия их коллизий).
- Event Actor End Overlap — событие вызывается при окончании пересечения текущего Актора с другим объектом (в момент окончания перекрытия их коллизий).
Add Collision Component
- Add Box Collision — создает и добавляет к Актору компонент Box Collision, используемый для обнаружения столкновений с другими Акторами или компонентами, действуя как невидимая «коробка коллизии».
- Add Capsule Collision — создает и добавляет к Актору компонент Capsule Collision, используемый для обнаружения столкновений с другими Акторами или компонентами, действуя как невидимая «капсула коллизии».
- Add Sphere Collision — создает и добавляет к Актору компонент Sphere Collision, используемый для обнаружения столкновений с другими Акторами или компонентами, действуя как невидимая «сфера коллизии».
Hit Result
- Break Hit Result — разбивает структуру Hit Result на ее составные части, содержащие подробную информацию о столкновении.
- Make Hit Result — создает структуру Hit Result с целью её искусственного создания или модифицирования при тестировании или симуляции.
Get Array Overlap
- Box Overlap Actors — возвращает массив Акторов, которые перекрываются (collision overlapping) с текущим заданным объёмом в форме параллелепипеда (Box).
- Box Overlap Components — возвращает массив компонентов, которые перекрываются с текущим заданным объёмом в форме параллелепипеда (Box).
- Capsule Overlap Actors — возвращает массив Акторов, которые перекрываются с текущим заданным объёмом в форме капсулы (Capsule).
- Capsule Overlap Components — возвращает массив компонентов, которые перекрываются с текущим заданным объёмом в форме капсулы (Capsule).
- Sphere Overlap Actors — возвращает массив Акторов, которые перекрываются с текущим заданным объёмом в форме сферы (Sphere).
- Sphere Overlap Components — возвращает массив компонентов, которые перекрываются с текущим заданным объёмом в форме сферы (Sphere).
- Component Overlap Actors — возвращает массив Акторов, которые перекрываются с текущим заданным компонентом.
- Component Overlap Components — возвращает массив компонентов, которые перекрываются с текущим заданным компонентом.
- Get Overlapping Actors (Target is Actor) — возвращает массив Акторов, которые перекрываются с текущим заданным Актором (любой компонент перекрывается с любым компонентом).
- Get Overlapping Actors (Target is Primitive Component) — возвращает массив Акторов, которые перекрываются с текущим заданным компонентом.
- Get Overlapping Components (Target is Actor) — возвращает массив компонентов, которые перекрываются с текущим заданным Актором.
- Get Overlapping Components (Target is Primitive Component) — возвращает массив компонентов, которые перекрываются с текущим заданным компонентом.
Move
- Get Move Ignore Actors — возвращает массив Акторов, которых игнорирует коллизия текущего компонента при его движении.
- Get Move Ignore Components — возвращает массив компонентов, которых игнорирует коллизия текущего компонента при его движении.
- Clear Move Ignore Actors — очищает список Акторов, которых игнорирует коллизия текущего компонента при его движении.
- Clear Move Ignore Components — очищает список компонентов, которых игнорирует коллизия текущего компонента при его движении.
- Ignore Actor when Moving — добавляет/удаляет указанный Актор в список/из списка Акторов, которых компонент игнорирует при перемещении.
- Ignore Component when Moving — добавляет/удаляет указанный компонент в список/из списка компонентов, которых текущий компонент игнорирует при перемещении.
Line Trace
- Line Trace By Channel — выполняет трассировку линии в игровом мире и возвращает информацию о первом столкновении с объектом, используя при этом заданный канал коллизии (Collision Channel) для определения, какие объекты должны блокировать линию трассировки.
- Line Trace By Profile — выполняет трассировку линии в игровом мире и возвращает информацию о первом столкновении, используя заданный профиль коллизии (Collision Presets/Profile) для определения, какие объекты должны блокировать линию трассировки.
- Line Trace For Objects — выполняет трассировку линии в игровом мире и возвращает информацию о первом столкновении с объектом указанного типа коллизии (Object Types).
- Line Trace Component — выполняет трассировку линии в игровом мире и возвращает информацию о первом столкновении с объектом указанного компонента.
- Multi Line Trace By Channel — выполняет трассировку линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования луча, используя указанный канал коллизии.
- Multi Line Trace By Profile — выполняет трассировку линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования луча, используя указанный профиль коллизии.
- Multi Line Trace For Objects — выполняет трассировку линии в игровом мире и возвращает массив всех пересечений (до первого столкновения) с объектами указанного типа коллизии, произошедших по пути следования луча.
Sphere Trace
- Sphere Trace By Channel — выполняет трассировку сферы вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом заданного канала коллизии (Collision Channel).
- Sphere Trace By Profile — выполняет трассировку сферы вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом заданного профиля коллизии (Collision Presets/Profile).
- Sphere Trace For Objects — выполняет трассировку сферы вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом указанного типа коллизии (Object Types).
- Sphere Trace Component — выполняет трассировку сферы вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом указанного компонента.
- Multi Sphere Trace By Channel — выполняет трассировку сферы вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования сферы, используя указанный канал коллизии.
- Multi Sphere Trace By Profile — выполняет трассировку сферы вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования сферы, используя указанный профиль коллизии.
- Multi Sphere Trace For Objects — выполняет трассировку сферы вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения) с объектами указанного типа коллизии, произошедших по пути следования сферы.
Box Trace
- Box Trace By Channel — выполняет трассировку параллелепипеда вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом заданного канала коллизии (Collision Channel).
- Box Trace By Profile — выполняет трассировку параллелепипеда вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом заданного профиля коллизии (Collision Presets/Profile).
- Box Trace For Objects — выполняет трассировку параллелепипеда вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом указанного типа коллизии (Object Types).
- Multi Box Trace By Channel — выполняет трассировку параллелепипеда вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования параллелепипеда, используя указанный канал коллизии.
- Multi Box Trace By Profile — выполняет трассировку параллелепипеда вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования параллелепипеда, используя указанный профиль коллизии.
- Multi Box Trace For Objects — выполняет трассировку параллелепипеда вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения) с объектами указанного типа коллизии, произошедших по пути следования параллелепипеда.
Capsule Trace
- Capsule Trace By Channel — выполняет трассировку капсулы вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом заданного канала коллизии (Collision Channel).
- Capsule Trace By Profile — выполняет трассировку капсулы вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом заданного профиля коллизии (Collision Presets/Profile).
- Capsule Trace For Objects — выполняет трассировку капсулы вдоль линии в игровом мире и возвращает информацию о первом столкновении с объектом указанного типа коллизии (Object Types).
- Multi Capsule Trace By Channel — выполняет трассировку капсулы вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования капсулы, используя указанный канал коллизии.
- Multi Capsule Trace By Profile — выполняет трассировку капсулы вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения), произошедших по пути следования капсулы, используя указанный профиль коллизии.
- Multi Capsule Trace For Objects — выполняет трассировку капсулы вдоль линии в игровом мире и возвращает массив всех пересечений (до первого столкновения) с объектами указанного типа коллизии, произошедших по пути следования капсулы.
Совет. Вскоре выйдет моя бесплатная книга по Blueprints для Unreal Engine в PDF формате. Как она выйдет, рекомендую её скачать, чтобы Вы детально изучили блюпринты Анрил Энджин.