
Note that D3D9On12 is an enlightened D3D9 driver, and there are several places where it receives additional information compared to a traditional D3D9 driver, either to enable it to provide API-level information to D3D12 rather than driver-level information (as is the case for shaders), or to enable interop scenarios. D3D9On12 will take these commands and convert them into D3D12 API calls, which are further validated by the D3D12 runtime, optionally including the D3D12 debug layer, which are then converted to the D3D12 DDI and sent to the D3D12 driver. When the application calls rendering commands, D3D9 will validate those commands, and then will convert those commands to the D3D9 DDI and send it to D3D9On12, just like any D3D9 driver.

When this happens, d3d9on12.dll is loaded by the D3D9 runtime and initialized. When an application creates a D3D9 device, they may choose for it to be a D3D9On12 device, rather than a native D3D9 device (see Direct3DCreate9On12 and Direct3DCreate9On12Ex). That means it is not a binary named d3d9.dll, but is named d3d9on12.dll. D3D9On12 is not an implementation of the D3D9 API, but is instead an implementation of the D3D9 usermode DDI (device driver interface). It won't directly help outside of those platforms, but it might encourage your favorite developer to add more visual flair to their games.D3D9On12 is a mapping layer, which maps graphics commands from D3D9 to D3D12. Ultimate should give game studios more incentives to try effects like ray tracing, not to mention a common tool for making Windows and Xbox Series X games - write for one platform and it'll be easier to make it available elsewhere. Both AMD and NVIDIA are throwing their weight behind the framework. A game written for DirectX 12 Ultimate will still run on other hardware - you just won't get all the visual pizazz. Microsoft is adamant that compatibility shouldn't take a hit. Sampler feedback, meanwhile, helps games load textures only when needed and boost performance as a result. Variable Rate Shading can tweak the use of visual effects shaders to use them more or less depending on the game, while mesh shaders should allow for more detail in large game worlds.

Other tricks might not be as conspicuous, but could go a long way toward boosting performance in your games. Your games won't demand as much from your system as they did before. A new inline ray tracing technique gives more control over the lighting effects that make more sense for certain games, GPU shaders can invoke ray tracing without talking to the CPU and streaming engines can more efficiently load ray tracing shaders as you roam around.

Microsoft has introduced a DirectX 12 Ultimate framework that makes ray tracing and other visual effects both more efficient and more flexible.

More efforts are underway to bring ray traced visuals to more of your games.
