Трассировка лучей в реальном времени на консоли тридцатилетней давности звучит как что-то невозможное, но энтузиаст-разработчик под ником XL2 доказал обратное. Опубликованное им видео демонстрирует динамические тени, построенные методом Ray Tracing, в игровом окружении на Sega Saturn – системе, выпущенной в конце 1994 года и считавшейся хуже оригинальной PlayStation в плане 3D-рендеринга.
Консоль, которая не должна была справиться
Sega Saturn вошла в историю как печально известная своей сложностью платформа с двумя процессорами и двумя видеочипами, оптимизация игр под которую была настоящим кошмаром для разработчиков. Консоль проектировалась для портов 2D-аркад и лишь потенциально могла справляться с зарождающимися 3D-проектами. Именно поэтому реализация трассировки лучей – технологии, ставшей массовой на ПК лишь с выходом видеокарт Nvidia RTX 20-й серии на архитектуре Turing в конце 2018 года – выглядит особенно впечатляюще.
XL2 объясняет суть демонстрации следующим образом:
«Это тест трассировки лучей в небольшой комнате. Функция довольно простая и может быть дополнительно оптимизирована: я просто тестирую все вершины, используя BSP [Binary Space Partitioning – алгоритм разбиения пространства]».
Разработчик применил несколько ключевых оптимизаций: движок тестирует только вершины 3D-объектов, причём обновляется лишь четверть из них за кадр, а количество источников света сведено к минимуму.
От тестовой комнаты до мини-игры
Первая демонстрация показывала тесное помещение с динамическим освещением, что уже само по себе напоминало PowerSlave — один из немногих проектов на Saturn с продвинутой для своего времени системой света. Однако второе видео оказалось ещё более впечатляющим: в нём XL2 представил «новый гибридный подход», тестирующий лучи только на объектах, но всё равно создающий значительно улучшенные динамические тени.
Видео в Telegram: https://t.me/applespbevent_video/262Новая демка включает многокомнатную локацию со стилизованным освещением и противником, которого можно убить, что делает её похожей скорее на Amid Evil RTX, чем на простой тестовый уровень в духе Quake. Правда, есть и ограничение: зеркало в финальной комнате обрушивает частоту кадров с обычных 30 до 15 FPS на реальном железе, поэтому XL2 надеется, что динамические тени «не окажутся слишком ресурсоёмкими» после дальнейших оптимизаций.
Видео в Telegram: https://t.me/applespbevent_video/262Перспективы и выпуск для публики
Разработчик намекает, что демонстрацию можно улучшить – часть доработок будет «очень простой», другие потребуют «чуть больше математики». Если XL2 доведёт проект до публичного релиза, владельцы модифицированных Sega Saturn смогут запустить игру с трассировкой лучей на консоли, которая появилась задолго до того, как эта технология стала хотя бы теоретически возможной для домашних систем.
В сообществе уже окрестили XL2 «повелителем Saturn» за его техническое колдовство, и это, пожалуй, одна из самых впечатляющих демонстраций раскрытия потенциала старого железа за последнее время.