UE 5.7: PSO precaching включён, а фризы при стриминге мира никуда не делись

Рейтинг: 64.6% · 7 голосов
Создание игр на Unity, Unreal Engine, Godot: 3D-графика, шейдеры, физика, геймдизайн, оптимизация и инди-проекты.
Ответить
Аватара пользователя
Austkin
Сообщения: 83
Зарегистрирован: 11 май 2026, 03:40

UE 5.7: PSO precaching включён, а фризы при стриминге мира никуда не делись

Сообщение Austkin »

Опенворлд на UE 5.7, World Partition, почти вся статика на Nanite. Целевое железо — Ryzen 5 5600 + RTX 3060, по опросам это сейчас типичная машина у нашей аудитории в СНГ, ниже опускаться не планируем.

Проблема: при быстром перемещении по миру ловим хитчи по 60-120 мс. Шейдерные статтеры победили — r.PSOPrecaching=1, прекомпиляция на первом запуске, тут всё чисто. Но traversal stutter при подгрузке ячеек остался. stat streaming показывает пики ровно в момент загрузки HLOD-ов и спавна контента ячейки.

Что уже пробовал: поднял пулы стриминга текстур, перевёл сборку на IoStore. Стало лучше, но 90-я перцентиль фреймтайма всё равно уродливая. Куда копать дальше?
👍1 ❤️1 🔥1 😄1 🤔1
✔ Лучший ответ сформирован автоматически — gpu_chan
@Austkin, Проходили это на 5.6, расскажу разбор, может совпадёт. У нас хитчи оказались вообще не про I/O. Профилировали через Unreal Insights: открываешь трейс, смотришь Game Thread в момент хитча — и видишь, что время жрёт не FlushAsyncLoading, а спавн акторов. Конструкторы блюпринтов делали тяжёлую работу: поиск компонентов, чтение data table, регистрация в менеджерах. На одной ячейке могло спа…
Перейти к ответу →
Аватара пользователя
rabbitsmith
Сообщения: 7
Зарегистрирован: 17 май 2026, 00:39

Re: UE 5.7: PSO precaching включён, а фризы при стриминге мира никуда не делись

Сообщение rabbitsmith »

@Austkin, Первое, что проверил бы — размер ячеек World Partition. Дефолтные 256 метров для плотного контента слишком жирные: ячейка въезжает целиком и игра давится. Мы дробили до 128, а в городских кусках до 64. Второе — s.AsyncLoadingTimeLimit: дефолтные 5 мс на кадр под асинхронную загрузку это много для 60 fps, мы зажали до 2 мс, загрузка размазалась, пики ушли.
👍 ❤️1 🔥 😄 🤔2
Аватара пользователя
gpu_chan
Сообщения: 14
Зарегистрирован: 22 май 2026, 16:39

Re: UE 5.7: PSO precaching включён, а фризы при стриминге мира никуда не делись

Сообщение gpu_chan »

✔ Лучший ответ — сформирован автоматически
@Austkin, Проходили это на 5.6, расскажу разбор, может совпадёт. У нас хитчи оказались вообще не про I/O. Профилировали через Unreal Insights: открываешь трейс, смотришь Game Thread в момент хитча — и видишь, что время жрёт не FlushAsyncLoading, а спавн акторов. Конструкторы блюпринтов делали тяжёлую работу: поиск компонентов, чтение data table, регистрация в менеджерах. На одной ячейке могло спавниться 300+ акторов за кадр.

Что сделали: вынесли горячие классы в C++, инициализацию сделали ленивой, на повторяющиеся объекты — пулинг. Отдельно размазали спавн по кадрам бюджетом 1.5 мс.

Цифры: 95-я перцентиль кадра была 48 мс, стала 21 мс на той же сцене. Заняло три недели на двоих.

Про Nanite Foliage из 5.7: взяли, минус ~3 мс на GPU на лесных биомах, штука рабочая. Но важно понимать — статтеры это почти всегда game thread, GPU-фичами они не лечатся.
👍 ❤️1 🔥 😄 🤔
Аватара пользователя
b1llyn0m
Сообщения: 70
Зарегистрирован: 11 май 2026, 07:32

Re: UE 5.7: PSO precaching включён, а фризы при стриминге мира никуда не делись

Сообщение b1llyn0m »

Раз IoStore уже есть — проверь, что контейнеры реально с Oodle-компрессией и что у игроков не HDD. У нас четверть аудитории сидела на жёстких дисках, и для них никакой тюнинг не помогал, пока не сделали отдельный пресет с агрессивным префетчем. И ещё момент: DX12 против Vulkan на картах уровня 1660/2060 ведёт себя по-разному именно по хитчам, прогоните оба бэкенда на стенде, результат может удивить.
👍 ❤️ 🔥 😄 🤔
Аватара пользователя
maja33
Сообщения: 38
Зарегистрирован: 12 май 2026, 10:17

Re: UE 5.7: PSO precaching включён, а фризы при стриминге мира никуда не делись

Сообщение maja33 »

@b1llyn0m, Непопулярное мнение: половина жалоб на «статтеры UE5» — это банально GPU-bound фреймтайм, который люди путают с хитчами. На 3060 с Lumen и виртуальными тенями в опенворлде вы и так живёте на 35-45 fps, и любая просадка ощущается как фриз. Замерьте честно: если хитч виден в Game Thread трейсе — лечите стриминг, если нет — выключайте Lumen, пеките свет, и внезапно «статтеры» исчезнут. Мы для слабых пресетов так и сделали, отзывы про фризы упали в разы.
👍3 ❤️ 🔥1 😄 🤔
Ответить
Поделиться темой: ✈ Telegram VK

Вернуться в «Геймдев и разработка игр»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость