Найти в Дзене
UE5: Timeline — быстрые анимации без сложностей
UE5: Timeline — быстрые анимации без сложностей. Timeline — простой способ анимировать что угодно по кривой прямо в Blueprint: поворот двери, яркость света, громкость, параметр материала. Мини-практика: 1) Добавьте Timeline в Blueprint и создайте Float Track. 2) Поставьте ключи: 0.0 → 0; 0.8 → 90. 3) В Update передавайте значение в SetRelativeRotation (Make Rotator, Z = Value). 4) По вводу вызывайте Play/Reverse...
1 неделю назад
UE5: надёжные сохранения прогресса без сюрпризов
UE5: надёжные сохранения прогресса без сюрпризов. Короткий чек-лист для SaveGame: - Свой класс USaveGame и поле SaveVersion; при изменениях мигрируйте данные или сбрасывайте к дефолтам. - По два слота на профиль: Manual и Auto. Перед записью грузите существующий слот, аккуратно мерджите и только потом сохраняйте. При загрузке, если основной битый — используйте бэкап. - Не храните прямые ссылки на акторы. Сохраняйте SoftObjectPath к ассетам, собственные ID/теги для поиска акторов, плюс Transform/состояние...
2 недели назад
FString, FText и FName в UE: что выбирать и где не ошибиться
FString, FText и FName в UE: что выбирать и где не ошибиться. Короткая памятка, которая спасает от странных багов в UI и логике: - FString — для обработки строк в коде/Blueprints. Удобно парсить и конкатенировать. Не храните имена и идентификаторы как String — сравнение дороже и подвержено опечаткам. - FName — для идентификаторов и ключей. Сравнение быстрое, регистр нечувствителен. Не показывайте игроку: не локализуется...
2 недели назад
UE5: Локализация проекта без боли
UE5: Локализация проекта без боли. Короткий план, чтобы перевести игру и не утонуть в настройках: 1) Источник строк: используйте Text (а не String) в Blueprints; в C++ — LOCTEXT/NSLOCTEXT. Жёстко склеенные строки не собираются в перевод. 2) Сбор: Window → Localization Dashboard → New Localization Target (Game) → Gather. Проверьте пути Source. 3) Языки: добавьте нужные культуры (ru, en и т. д.). Экспортируйте PO, переведите, затем Import...
2 недели назад
UE5: Компоненты вместо наследования — когда и какие использовать
UE5: Компоненты вместо наследования — когда и какие использовать. Компоненты — это переиспользуемые блоки поведения без роста иерархий классов. - UActorComponent: логика без трансформа. Примеры: HealthComponent (события OnDamaged/OnDeath), InventoryComponent, QuestTracker. - USceneComponent: имеет позицию/поворот. Примеры: точка спауна, узел крепления к сокету, якорь для камеры/фонарика. - UPrimitiveComponent: рендер и коллизия. Примеры: SphereComponent как хитбокс, DecalComponent для меток. Практика:...
2 недели назад
UE5: кинематографичный рендер через Movie Render Queue
UE5: кинематографичный рендер через Movie Render Queue. Зачем: MRQ даёт тонкий контроль над качеством. Мини-гайд: - Window → Cinematics → Movie Render Queue, добавьте свой Level Sequence. - Settings: Anti-Aliasing → Temporal Sample Count 8–16; при желании включите Motion Blur. - Output: PNG/EXR, нужное разрешение; Game Overrides → Use Game Mode. - Warm Up: Engine 30–60 и Render 8–16 кадров — меньше шумов и мерцаний...
3 недели назад
UE5: шпаргалка по Sequencer для кат-сцен
UE5: шпаргалка по Sequencer для кат-сцен. - Начинайте с Sub-Sequence: одна сцена = один саб, собирайте их в Master Sequence — удобно менять порядок шотов. - Spawnable vs Possessable: временные объекты (VFX, реквизит) — Spawnable; персонажи уровня — Possessable. Не смешивайте их внутри одного шота. - Shot Track: храните каждый дубль отдельным шотом, Camera Cuts — для чистых переходов. - Кривые:...
3 недели назад
Niagara: User Parameters — один эффект, много вариаций
Niagara: User Parameters — один эффект, много вариаций. Хотите один системный эффект и десятки вариаций без копий? Используйте User Parameters. Как настроить: - В системе добавьте User.Color (LinearColor), User.SpawnRate (float), User.Scale (float), User.Mesh (StaticMesh). - Подключите их в модулях: Spawn Rate = User.SpawnRate, Color = User.Color, Sprite Size *= User.Scale; в Mesh Renderer — Mesh = User...
3 недели назад
EQS в Unreal Engine: три практичных паттерна для ботов
EQS в Unreal Engine: три практичных паттерна для ботов. Environment Query System отвечает на вопросы «где встать/куда идти/где спрятаться» без сложной логики. Попробуйте три паттерна: - Укрытие: Generators — Points/Grid вокруг врага. Tests — Visibility от врага к точке (инвертируйте), Distance к врагу (дальше — выше), Pathfinding (доступность). - Засада: Donut вокруг цели. Tests — Dot/Angle: выбирайте точки позади цели (меньший угол к вектору «цель → точка», чем к «взгляд цели»), плюс Distance в желаемом диапазоне...
3 недели назад
UE5: практичный приём — дороги и трубы на сплайнах
UE5: практичный приём — дороги и трубы на сплайнах. Сплайны удобны для дорог, рельсов, труб и кабелей из одного Blueprint. Как собрать: - Создайте Actor с SplineComponent. - В Construction Script разбейте сплайн на сегменты (например, шаг 200 uu) и для каждого создавайте SplineMeshComponent. - Для сегмента берите P0/T0 и P1/T1 через GetLocationAndTangentAtDistanceAlongSpline и вызывайте SetStartAndEnd; укажите SetForwardAxis(X) — меш должен быть вытянут вдоль оси X...
4 недели назад
UE5: автоматические тесты для Blueprints и уровней
UE5: автоматические тесты для Blueprints и уровней. Автотесты спасают от регрессий: вы меняете логику — тесты мгновенно ловят поломки. Как начать: - Включите плагин Functional Testing и откройте окно Session Frontend → Automation. - На уровне разместите Functional Test, опишите сцену (Given), запустите логику (When), проверьте Assert-ноды (Then)...
4 недели назад
UE5: свой раздел в Gameplay Debugger за вечер
UE5: свой раздел в Gameplay Debugger за вечер. Gameplay Debugger — встроенная накладка для live-диагностики геймплея. Как добавить свою вкладку: 1) Plugins → Gameplay Debugger (включите и перезапустите). 2) Создайте класс, унаследованный от FGameplayDebuggerCategory; переопределите CollectData и DrawData. 3) В StartupModule модуля зарегистрируйте категорию через IGameplayDebugger::Get().RegisterCategory("MyCat", …, EGameplayDebuggerCategoryState::EnabledInGameAndSimulate)...
1 месяц назад