Найти в Дзене
UE5: Быстрые итерации в C++ без перезапуска редактора
UE5: Быстрые итерации в C++ без перезапуска редактора. - Включите Live Coding (Editor Preferences → General → Live Coding). - Что можно менять без рестарта: тела функций и алгоритмы, не трогающие макросы отражения. Что нельзя: сигнатуры, UCLASS/UPROPERTY/UFUNCTION и любой изменения layout — нужна полная пересборка/перезапуск. - Держите конструкторы акторов “чистыми”: только CreateDefaultSubobject и дефолты. Загрузки ассетов/логика — в BeginPlay или OnConstruction...
3 часа назад
Как ускорить первую загрузку уровня в UE5
Как ускорить первую загрузку уровня в UE5. Первая загрузка часто тормозит из‑за шейдеров и PSO. Быстрые шаги: - Включите Shared DDC: Editor Preferences → Derived Data Cache → Folder/Network, укажите общую папку. На сборочных машинах — Installed DDC. - Прогрейте Shader Pipeline Cache: r.ShaderPipelineCache...
1 день назад
Unreal Insights за 10 минут: охота на фризы
Unreal Insights за 10 минут: охота на фризы. Почему важно: кадры >16,6 мс накапливаются и бьют по UX. Как делать: 1) Включите трейс: Editor Preferences → Insights. В PIE: Stat StartFile / Stat StopFile. 2) Откройте .utrace в Unreal Insights. Смотрите Game, Render, GPU Threads. Фильтруйте кадры >25–33 мс. 3) Для BP включите Stat Blueprint и Blueprint Profiler — ищите тяжёлые Tick и ноды...
3 дня назад
Subsystems в Unreal Engine: чистая архитектура без синглтонов
Subsystems в Unreal Engine: чистая архитектура без синглтонов. Subsystems — встроенный способ хранить глобальную логику без статик‑синглтонов. - GameInstanceSubsystem: кросс‑уровневые сервисы (телеметрия, профиль игрока). - WorldSubsystem: логика конкретного мира/карты (спавн волн, навигация). - LocalPlayerSubsystem: пер‑плеер задачи (инпут‑схемы, настройки камеры). Плюсы: авто‑создание/удаление, предсказуемый жизненный цикл (Initialize/Deinitialize), удобный доступ через API...
4 дня назад
Пожалуйста, пришлите список запрещённых тем, чтобы я смог подготовить пост и гарантированно их не затронуть
Пожалуйста, пришлите список запрещённых тем, чтобы я смог подготовить пост и гарантированно их не затронуть. После этого сделаю короткий пост про Unreal Engine с одной HTML-ссылкой и без лишнего HTML.
5 дней назад
7 способов обойтись без Event Tick и ускорить проект в Unreal Engine
7 способов обойтись без Event Tick и ускорить проект в Unreal Engine. Большинство лагов в геймплее — из-за перегруженного тика. Что делать вместо него: - Таймеры для периодики (SetTimer, ClearTimer). - Делегаты/события вместо опроса состояния. - Latent-узлы: Delay, Timeline, Async Tasks. - Триггеры и Overlap-события для реакций на вход/выход. - Tick Interval и условный тик: Enable/Disable Tick по событию...
6 дней назад
Оптимизация Tick в Unreal Engine: 7 коротких приёмов
Оптимизация Tick в Unreal Engine: 7 коротких приёмов. - Не включайте Tick по умолчанию: bCanEverTick=false; активируйте только когда это реально нужно. - Периодические задачи переносите в таймеры (GetWorldTimerManager): задайте частоту вместо каждого кадра. - Реагируйте на события: OnComponentBegin/EndOverlap, OnRep, делегаты — вместо опроса состояния в каждый Tick. - Используйте TickInterval и SetActorTickEnabled/SetComponentTickEnabled для динамического включения/выключения...
1 неделю назад
5 ловушек в Blueprints, которые крадут кадры
5 ловушек в Blueprints, которые крадут кадры. Короткий чек-лист, который можно применить сегодня: - Event Tick: минимизируйте тики, объединяйте логику в менеджер, используйте SetTickInterval и отключайте тик по дистанции. - UI: избегайте Bindings, которые дергают логику каждый кадр; обновляйте виджеты вручную при изменении данных. - Construction Script: не грузите ассеты и не ищите акторы; тяжелое переносите в BeginPlay или отдельные инструментальные скрипты...
1 неделю назад
Пять приёмов для молниеносных итераций в Unreal Engine 5
Пять приёмов для молниеносных итераций в Unreal Engine 5. - Shared Derived Data Cache: Project Settings → Derived Data Cache → включите Shared Cache (сетевой путь). Команда компилирует шейдеры один раз — экономия часов. - Shader Pipeline Cache: r.CreatePipelineCacheFile=1; прогрейте ключевые уровни на целевой платформе и положите .upipelinecache в билд — меньше фризов. - Multi-Process Cook + -iterate: ускоряет инкрементальные сборки контента...
1 неделю назад
5 практичных фишек UE5, которые экономят часы разработки
5 практичных фишек UE5, которые экономят часы разработки. - Asset Manager: асинхронная загрузка по типам и тегам. - Data Assets: конфиг оружия/врагов в данных, без пересборок. - Gameplay Tags: состояния и фильтры без enum-адской боли. - Subsystems: сервисы в GameInstance/World/Editor вместо синглтонов. - Enhanced Input: контексты, триггеры, модификаторы; легко менять схемы...
1 неделю назад
Управляемые данные в UE5 с Data Assets и Asset Manager
Управляемые данные в UE5 с Data Assets и Asset Manager. Быстро масштабируйте проект без переписывания кода — вынесите конфиги в DataAsset/PrimaryDataAsset и дайте их в руки дизайнерам. - Что хранить: параметры оружия, лут-таблицы, характеристики врагов, квесты, настройки спавна. - Настройка: Project Settings → Asset Manager. Добавьте Primary Asset Types, каталоги, правила упаковки. - Доступ: храните FPrimaryAssetId или TSoftObjectPtr; грузите через UAssetManager::LoadPrimaryAsset(Async)...
1 неделю назад
Предсказуемый рандом в UE5: FRandomStream без сюрпризов
Предсказуемый рандом в UE5: FRandomStream без сюрпризов. В геймплее и мультиплеере «обычный» Rand даёт рассинхрон: на клиентах результаты расходятся между сессиями и при записи реплеев. Как сделать детерминированно: - Создавайте FRandomStream с фиксированным seed на объект/уровень. - Храните seed в SaveGame или вычисляйте от идентификатора актора. - Перед серией расчётов вызывайте Initialize(seed), чтобы воспроизводить те же значения...
2 недели назад