At the Intel Developer Conference in Tokyo recently the company said that their upcoming Xe GPU will be supporting ray tracing.
Ray tracing in in the DX12 API under the DXR shader design principles. DXR has been developed at Microsoft for several years given the growing need for workstation graphics etc.
Recently Crytek showed a conventional shader based ray traced demo which ran on a Vega 56 card. It’s likely they used the DX12 API to build their shader.
By allowing traversal of a full 3D representation of the game world, DirectX Ray Tracing allows current rendering techniques such as SSR to naturally and efficiently fill the gaps left by rasterization, and opens the door to an entirely new class of techniques that have never been achieved in a real-time game.
You may have noticed that DXR does not introduce a new GPU engine to go alongside DX12’s existing Graphics and Compute engines. This is intentional – DXR workloads can be run on either of DX12’s existing engines.
The primary reason for this is that, fundamentally, DXR is a compute-like workload. It does not require complex state such as output merger blend modes or input assembler vertex layouts. A secondary reason, however, is that representing DXR as a compute-like workload is aligned to what we see as the future of graphics, namely that hardware will be increasingly general-purpose, and eventually most fixed-function units will be replaced by HLSL code.
The design of the ray tracing pipeline state exemplifies this shift through its name and design in the API. With DX12, the traditional approach would have been to create a new CreateRaytracingPipelineState method. Instead, we decided to go with a much more generic and a flexible CreateStateObject method. It is designed to be adaptable so that in addition to Raytracing, it can eventually be used to create Graphics and Compute pipeline states, as well as any future pipeline designs.
The RTX cards are not designed with DX12 generally which means the few games that use it have to be redesigned as new shaders are developed.