Нивалис: Как Unity, воксели и трассировка лучей создают уникальный киберпанк

24.05.2026 Опубликовано | Переведено с испанского

Nivalis — это киберпанк-симулятор жизни, выделяющийся своим художественным стилем, основанным на вокселях, неоне и непрекращающемся дожде. Разработанный на глубоко модифицированной версии Unity, игра использует MagicaVoxel для моделирования сцен и внутренние инструменты для управления трассировкой лучей в реальном времени. Этот подход позволяет добиться low-poly эстетики с фотореалистичным освещением — технической задачи, которую немногие инди-проекты могут сбалансировать без потери производительности.

Nivalis киберпанк воксельная игра с трассировкой лучей в Unity, дождь и неон low-poly

Оптимизация трассировки лучей в воксельных сценах с модифицированным Unity 🌧️

Команда Nivalis модифицировала конвейер рендеринга Unity, чтобы обрабатывать каждый воксель как легковесную единицу данных, что снижает нагрузку на трассировку лучей. Вместо использования плотной полигональной геометрии здания и объекты строятся из блоков MagicaVoxel, которые преобразуются в иерархические структуры коллизий в реальном времени. Для дождя и неоновых отражений была реализована гибридная система трассировки лучей: зеркальные отражения вычисляются с помощью лучей, ограниченных воксельными поверхностями, в то время как глобальное освещение частично запекается в текстуры света. Это позволяет трассировке лучей работать на оборудовании среднего класса — ключевой урок для инди-разработчиков: упрощайте базовую геометрию, чтобы трассировка лучей не обрушивала частоту кадров.

Уроки для инди-разработчиков: внутренние инструменты как фактор отличия 🛠️

Nivalis демонстрирует, что визуальный успех зависит не только от дорогих ассетов, но и от интеграции собственных инструментов в рабочий процесс. Студия создала скрипты в Unity, которые напрямую интерпретируют файлы MagicaVoxel, позволяя итерировать город без традиционного процесса экспорта. Кроме того, они разработали систему объемных частиц для дождя, взаимодействующую с трассировкой лучей, избегая использования стандартных ассетов. Для любого инди-разработчика ключ в том, чтобы вложить время в настройку движка до начала наполнения сцены; так каждый элемент — от неоновой вывески до лужи — будет согласованно реагировать на свет.

Как разработчик, какая была самая большая техническая проблема при интеграции трассировки лучей с воксельным движком в реальном времени для достижения динамического освещения Nivalis без потери производительности?

(P.S.: игровые джемы — как свадьбы: все счастливы, никто не спит, и в итоге ты плачешь)