
DirectX получил крупнейшее обновление трассировки лучей с 2018 года

Екатерина Уварова
Microsoft выпустила DirectX Agility SDK 1.620 и представила предварительную версию SDK 1.722. Главное нововведение — Clustered Geometry и Partitioned Top-Level Acceleration Structures (PTLAS), которые должны повысить эффективность трассировки лучей в сложных игровых сценах. Технологии рассчитаны на видеокарты NVIDIA GeForce RTX, AMD Radeon RX 9000 и поддерживаемые графические решения Intel.
Clustered Geometry разбивает геометрию объектов на небольшие переиспользуемые группы треугольников. Это позволяет повторно использовать готовые элементы при построении структур ускорения трассировки лучей, сокращая вычислительные затраты и объем необходимой памяти. В результате разработчики смогут применять более детализированные модели для расчета отражений и теней без существенного увеличения нагрузки на GPU.
PTLAS решает другую проблему: вместо перестроения всей структуры сцены система обновляет только изменившиеся участки. В сочетании с построением структур непосредственно на GPU это должно ускорить обработку динамических миров с большим количеством объектов.
В демонстрационном тесте Microsoft на AMD Radeon RX 9070 применение Clustered Geometry увеличило производительность с 1,2 до 79 FPS. Время построения структур ускорения сократилось с 788 до 3,11 мс, а потребление памяти уменьшилось почти на 90%. Впрочем, результаты получены в специальном тестовом приложении, поэтому аналогичного прироста во всех играх ожидать не стоит.
Новые возможности пока доступны в предварительной версии SDK. Для их использования разработчикам потребуется соответствующая поддержка со стороны драйверов. Microsoft рассчитывает, что унификация технологий DirectX упростит внедрение продвинутой трассировки лучей на видеокартах разных производителей.
Обновление также улучшает систему Advanced Shader Delivery, позволяющую оптимизировать распространение шейдеров и уменьшать затраты на их компиляцию. При этом существующие игры не получат автоматического прироста производительности: эффект зависит от того, как разработчики внедрят новые инструменты в свои проекты.



