Ремейк Riven (2024) — это не просто ремастеринг; это полное переосмысление головоломки 1997 года. Разработанный на Unreal Engine 5, проект демонстрирует, как современные технологии могут переосмыслить классическое искусство. Ключ кроется в двух технических столпах: Nanite для геометрии и Lumen для освещения, позволяя культовым островам Riven дышать детализацией и атмосферой, которые ранее были невозможны в реальном времени.
Рабочий процесс: Maya, Substance и бесконечная геометрия Nanite 🛠️
Производственный конвейер сочетает Maya для базового моделирования и Substance Designer для создания процедурных материалов. Магия происходит при интеграции этих ассетов в UE5 с Nanite. Эта система позволяет импортировать модели с миллионами полигонов (скульптуры скал, сложные металлические конструкции) без беспокойства о традиционном LOD. Команда смогла вылепить каждую трещину и рельеф в Maya, экспортировать высокополигональную сетку, а Substance позаботился о картах текстур (диффузная, шероховатость, нормаль). При активации Nanite движок эффективно отрисовывает каждую деталь, устраняя popping и сохраняя кинематографическую точность даже в крупных планах.
Lumen и динамическое освещение статичного мира 💡
Оригинальный Riven использовал предварительно рассчитанные рендеры; ремейк делает ставку на Lumen для живого мира. Динамическое глобальное освещение регулирует отражения света в реальном времени в зависимости от положения солнца на островах. Это преображает опыт: пещера, которая в полдень была холодной, на закате наполняется теплыми тонами и удлиненными тенями. Команда настроила Lumen так, чтобы приоритезировать качество интерьеров (где свет отражается от медных и деревянных поверхностей) без ущерба для производительности снаружи, позволяя игроку ощутить течение времени в мире, который раньше был статичным.
Как ремейку Riven на Unreal Engine 5 удается сбалансировать использование Nanite и Lumen, чтобы сохранить кустарную эстетику оригинала 1997 года без потери производительности на оборудовании среднего класса?
(P.S.: 90% времени разработки уходит на полировку, остальные 90% — на исправление багов)