Khronos Group Releases Vulkan Ray Tracing

Auer

[H]ard|Gawd
Joined
Nov 2, 2018
Messages
1,972
Set of provisional extension specifications publicly available today for industry feedback.

Beaverton, OR – March 17, 2020 – 6:00 AM PT – Today, The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, announces the ratification and public release of the Vulkan® Ray Tracing provisional extensions, creating the industry’s first open, cross-vendor, cross-platform standard for ray tracing acceleration. Primarily focused on meeting desktop market demand for both real-time and offline rendering, the release of Vulkan Ray Tracing as provisional extensions enables the developer community to provide feedback before the specifications are finalized. Comments and feedback will be collected through the Vulkan GitHub Issues Tracker and Khronos Developer Slack. Developers are also encouraged to share comments with their preferred hardware vendors. The specifications are available today on the Vulkan Registry.

Ray tracing is a rendering technique that realistically simulates how light rays intersect and interact with scene geometry, materials, and light sources to generate photorealistic imagery. It is widely used for film and other production rendering and is beginning to be practical for real-time applications and games. Vulkan Ray Tracing seamlessly integrates a coherent ray tracing framework into the Vulkan API, enabling a flexible merging of rasterization and ray tracing acceleration. Vulkan Ray Tracing is designed to be hardware agnostic and so can be accelerated on both existing GPU compute and dedicated ray tracing cores if available.

“There has been strong developer demand for a truly cross-platform ray tracing acceleration API and now Vulkan Ray Tracing is here to meet that industry need,” said Daniel Koch, senior graphics system software engineer at NVIDIA and Vulkan Ray Tracing task sub group chair at Khronos. “The overall architecture of Vulkan Ray Tracing will be familiar to users of existing proprietary ray tracing APIs, which enables straightforward porting of existing ray traced content, but this framework also introduces new functionality and implementation flexibility.”

Vulkan Ray Tracing consists of a number of Vulkan, SPIR-V, and GLSL extensions, some of which are optional. The primary VK_KHR_ray_tracing extension provides support for acceleration structure building and management, ray tracing shader stages and pipelines, and ray query intrinsics for all shader stages. VK_KHR_pipeline_library provides the ability to provide a set of shaders which can be efficiently linked into ray tracing pipelines. VK_KHR_deferred_host_operations enables intensive driver operations, including ray tracing pipeline compilation or CPU-based acceleration structure construction to be offloaded to application-managed CPU thread pools.

Vulkan Ray Tracing shaders are SPIR-V binaries which use two new extensions. The SPV_KHR_ray_tracing SPIR-V extension adds support for ray tracing shader stages and instructions; SPV_KHR_ray_query adds support for ray query shader instructions. Developers can generate those binaries in GLSL using two new GLSL extensions, GLSL_EXT_ray_tracing and GLSL_EXT_ray_query, which are supported in the open source glslang compiler. Engineers at Khronos member companies, including NVIDIA, have also added support for the SPIR-V extensions to DXC, Microsoft's open source HLSL compiler, enabling Vulkan Ray Tracing SPIR-V shaders to be authored in HLSL using the syntax defined by Microsoft, with minimal modifications.

Driver release updates and the status of Vulkan ecosystem components will be posted on the Vulkan Ray Tracing Provisional Release Tracker. A Vulkan SDK that includes support for Vulkan Ray Tracing will become available once all the necessary ecosystem components are upstreamed; check this link to watch for its availability. An introductory launch presentation on Vulkan Ray Tracing is here, and further technical details can be found in this blog post.



https://www.khronos.org/news/press/khronos-group-releases-vulkan-ray-tracing
 
Nice. Hopefully that means we won't have to wait too long for ray tracing in Doom Eternal.

Vulkan already supported NVidia ray tracing, so this likely has no impact Doom Eternal timing. The Doom team was using this early on, but had to put it aside to get the game out the door.

Also from what I read previously, the Vulkan RT implementation is modeled on the extension NVidia did to Vulkan to add RT support, so I expect very little API changes for the generic interface.
 
  • Like
Reactions: dgz
like this
It's official: Vulkan now offers an alternative to DirectX Raytracing

The Khronos Group behind the open API has announced the final Vulkan Ray Tracing extensions, and that means there's finally a firm alternative to Microsoft's DirectX Raytracing API used extensively in ray-traced games today...Integrated right into the existing Vulkan framework, the new Vulkan Ray Tracing is a set of extensions—Vulkan, SPIR-V, and GLSL—that allow developers to adopt ray tracing in games utilising the Vulkan API...

https://www.pcgamer.com/its-officia...n-official-alternative-to-directx-raytracing/
 
The Linux head in me really hopes Vulkan takes off. With the power of MS new console and developers seeming to eat it up I fear its not likely.
Damn DX damn Windows.
 
The Linux head in me really hopes Vulkan takes off. With the power of MS new console and developers seeming to eat it up I fear its not likely.
Damn DX damn Windows.
You’re more likely to see the MoltenVK wrapper updated so developers can focus Windows and Mac with Linux being something that gets the odd bone from smaller studios and indi developers. But yeah, supposedly the PS5 uses some form of Vulkan for its graphics so who knows maybe in a few years. But if/when it does I get the feeling like it will have an incredibly specific required hardware/software list.
 
Back
Top