Полгода против технологий: моя история борьбы с прогрессом

Вступление:

Начну с основ. Я работаю над артхаусным проектом «Attempt to Survive». Моим приоритетом стала глубокая оптимизация, чтобы игра стабильно работала на старом железе, сохраняя при этом качественную картинку.

Специально для тестов я собрал ПК: i7 6700k, GTX 950 и 8 ГБ оперативной памяти. Комплектующие нашлись в старых запасах, так что сборка не вызвала затруднений.

Сейчас я использую Unreal Engine 5, и, как многие справедливо подозревали, с оптимизацией здесь всё сложно. С каждым обновлением движок избавляется от проверенных временем инструментов в угоду «модных» технологий. Из-за этого минимальные требования взлетают до уровня RTX 3060, при этом даже отключение всех «фич» не гарантирует чистоты — остаточный код продолжает нагружать систему.

Отдельного упоминания заслуживает новая шейдерная модель, потребляющая ресурсы гораздо активнее, чем в четвертой версии.

Понимая это, я перешел на DirectX 11. Это позволило принудительно отключить Lumen, Nanite и прочий «тяжелый» функционал. Да, возникли определенные ограничения, но они оказались вполне приемлемыми.

Многие спросят: почему не остаться на 4.27? Ответ прост: совместимость плагинов и ассетов. Я инди-разработчик, и поддержка четверки постепенно сходит на нет, а инструменты для даунгрейда выручают далеко не всегда.

Процесс разработки:

Сначала я полагался на динамическое освещение, так как больших объемов на тот момент не планировал, а опыт с запеканием света в 4.25 оставил неприятные впечатления.

 Скрины из архивов
Скрины из архивов

Проблемы стали очевидны при создании модульных зданий с использованием неравномерного масштабирования объектов.

 Скрины из архивов
Скрины из архивов

Я пробовал использовать Screen Space для создания глубины теней, но быстро понял, что этот инструмент в пятом движке работает некорректно из-за глубокой интеграции с Lumen. Его состояние ухудшалось от версии к версии, и в 5.8 его поддержка была окончательно прекращена.

В итоге я отключил все сомнительные технологии. Рендер стал стабильнее, артефакты исчезли, а материалы начали выглядеть чище. Производительность на слабом железе хоть и не стала идеальной, но оказалась приемлемой для полностью динамического освещения. Цена — потеря художественной глубины.

Скрины из архивов
Скрины из архивов

Я пытался выстраивать свет вручную, но результат выглядел плоским и «искусственным». Даже интерьеры освещались так, будто у них нет стен.

 Скрины из архивов
Скрины из архивов

Я пытался имитировать свет «костылями» через PostProcess-тома, но результат был далек от профессионального.

Точка невозврата:

Устав от борьбы с базовыми инструментами, я поддался на уговоры коллег и активировал Lumen. Визуальная отдача была мгновенной: глубина картинки, реалистичные отскоки света. Но цена оказалась слишком высокой.

 Блики добавлены через плагин Real Flares
Блики добавлены через плагин Real Flares

Даже на моей основной машине (RTX 5070, Ryzen 9 5900x, 64 ГБ ОЗУ) производительность просела до недопустимых значений. К тому же, визуальный стиль начал терять индивидуальность, превращаясь в «стерильный» реализм.

В этот момент я решил взять паузу.

Озарение:

Перерыв пошел на пользу: я занялся сторонними проектами («Post-Soviet Bus Simulator» и «BloodVein»), где решил вернуться к классическому статичному освещению (Lightmass).

Оказалось, что для хоррор-сцен «печеный» свет дает куда больше атмосферы, чем «динамика». К тому же, я обнаружил, что опасения по поводу масштабирования мешей (скейлинга) были сильно преувеличены: при правильном подходе лайтмапа не рассыпается.

Реализация и итог:

Я вернулся к своему проекту и полностью пересобрал систему освещения под статику. Результат превзошел ожидания: глубина, контраст, полный контроль над визуальным стилем без оглядки на «тяжелые» технологии.

И это лишь начальный этап, без глубокой настройки постпроцесса и оптимизации разрешений лайтмап.

Вывод прост: не стоит слепо гнаться за современными технологиями. Часто классические, проверенные методы дают лучший результат с гораздо меньшими затратами ресурсов. Эпики продолжают усложнять жизнь разработчикам, навязывая прожорливые технологии вроде Chaos Physics и планируя отказ от классического освещения в пользу системы, которая подходит далеко не всем.

 

Источник

Читайте также