Новое достижение AMD наглядно демонстрирует, как можно оптимизировать трассировку лучей для работы с большим объемом анимированной геометрии. На демонстрации видеокарта Radeon RX 9070 XT успешно отрендерила около 585 миллионов деформируемых треугольников при разрешении 1080p и частоте в 60 кадров в секунду.
Одной из основных сложностей при реализации рейтрейсинга является необходимость частого перерасчета структур ускорения для сложных движущихся объектов. Каждая деформация трехмерной модели требует непрерывного обновления данных, что создаёт серьезные нагрузки на графический процессор, особенно в сценах с густыми элементами, такими как трава или толпы персонажей.
Для решения этой проблемы AMD предложила использовать упрощенные каркасы из тетраэдров для высокополигональных моделей. На этапе подготовки детализированная геометрия разделяется на фрагменты и упаковывается в статичные структуры ускорения, которые не изменяются в процессе работы приложения.
Во время анимации графический процессор управляет только базовой тетраэдральной сеткой. Когда луч пересекает деформированный тетраэдр, система преобразует его координаты в исходное пространство для проверки столкновения с высокополигональной моделью.
Такой метод позволяет значительно снизить нагрузку на видеопамять и вычислительные ресурсы, а также использовать статичную геометрию для разных типов анимаций. Примером успешной реализации этого алгоритма стали деревья, трава и небольшие трехмерные объекты.
Однако стоит отметить, что для повышения производительности такой подход влечет компромисс по точности изображения. Чем проще тетраэдральный каркас, тем меньше ресурсов требуется на расчеты, но это также снижает точность деформации объекта.
Из-за данного ограничения технология менее подходящая для детализированных движений или объектов с изменяющейся топологией. Специалисты AMD предлагают применять алгоритм для моделирования растительности под воздействием ветра, дальних планов или динамической замены уровней детализации.
Хотя данный алгоритм проходит стадию исследований и пока не предусмотрен для включения в драйвера или игровые релизы, Nvidia также работает в этом направлении, разрабатывая свою технологию RTX Mega Geometry.