AMD Radeon Rays 4.0: поддержка популярных API и открытый исходный код

Технология трассировки лучей Radeon Rays от компании AMD не пользуется особой популярностью среди разработчиков программного обеспечения и видеоигр в частности. С играми все понятно: у AMD попросту нет видеокарт, имеющих аппаратное ускорение трассировки лучей в реальном времени, а вот на низкую популярность Radeon Rays в сфере профессионального программного обеспечения влияет несколько факторов.

Технология AMD Radeon Rays, до версии 4.0 не включительно, могла работать только на API OpenCL. Это существенное ограничение является, наверно, ключевой проблемой крайне низкой популярности софта. Новая версия AMD Radeon Rays 4.0 принесла много нововведений, которые очень положительно скажутся на популярности и производительности трассировки лучей от AMD.

AMD Radeon Rays 4.0 поддерживает все популярные низкоуровневые API: Microsoft DirectX 12, Khronos Vulkan и Apple Metal. Для начала поддержки этих API пришлось избавиться от поддержки OpenCL. Учитывая, что на рынке есть Vulkan, потеря будет не велика. Также, помимо поддержки новых низкоуровневых API, Radeon Rays 4.0 получила оптимизацию BVH (Bounding Volume Hierarchy) и теперь базируется на платформе параллельных вычислений AMD C++.

Все это, конечно, хорошо, однако разработчикам не понравилась одна деталь – AMD Radeon Rays 4.0 имеет закрытый исходный код. AMD подумала над этим и объявила, что исправится и сделает исходный код технологии открытым:

«Мы обсудили этот вопрос внутри компании и внесем следующее изменение: AMD опубликует Radeon Rays 4.0 с открытым исходным кодом, однако некоторые технологии AMD будут помещены во внешние библиотеки, распространяемые в рамках SLA.

Как отметил u/scottherkleman в ветке о демо-версии Unreal Engine 5, мы стремимся предоставлять общие библиотеки трассировки лучей, не привязанные к одному производителю. В этом весь смысл Radeon Rays, и хотя распространять библиотеки с разрешительной лицензией — это неплохо, основываясь на ваших отзывах, мы решили пойти дальше и открыть исходный код.

Поэтому, пожалуйста, продолжайте создавать классные вещи с помощью Radeon Rays, и если вы тот тип разработчиков, которым требуется доступ к исходному коду прямо сейчас, свяжитесь с нами через страницу github или GPUOpen».

Совсем скоро на рынке появятся видеокарты AMD RDNA 2, которые будут поддерживать аппаратное ускорение трассировки лучей. Учитывая этот факт, выпуск новой версии Radeon Rays, которая получила значительные улучшения, должен увеличить количество программного обеспечения и видеоигр, поддерживающих технологию трассировки лучей от AMD.