Native DX9 hardware support is officially gone From Intel’s Xe integrated graphics solution on 12th Gen CPUs, and A-series Arc Alchemist discrete GPUs. To replace it, all DirectX 9 support will be migrated to DirectX 12 in the form of emulation.
Emulation is done in an open-source translation layer called “.D3D9On12The conversion is done by sending 3D DirectX 9 graphics commands to the D3D9On12 layer instead of the D3D9 graphics driver. When the D3D9On12 layer receives commands from the D3D9 API, all commands are converted to D3D12 API calls. Basically, D3D9On12 acts as a GPU driver by itself, not a real GPU driver from Intel.
According to Microsoft, the emulation process is a relatively performant implementation of DirectX 9.
As a result, this DX9 change from Intel seems like a very good move. Intel can now direct driver development resources towards DirectX 11 optimizations. This is very bad at the moment, and DX9 optimizations are completely “outsourced” to Microsoft, so Intel doesn’t hit performance as a result.
Given how good D3D9On12’s performance is according to Microsoft, it will be interesting to see if Nvidia and AMD follow the same path as Intel. However, there are things that can affect the API conversion, such as increased CPU usage (because the conversion is software accelerated) and potential side effects in older games. Nvidia and AMD also have almost 20 years of driver experience with DirectX 9, so performance can suffer at the DX12 emulation layer.
Conversely, Intel only has DirectX 9 experience with integrated graphics, not much higher performance discrete graphics experience. So, with the Arc launch approaching around the world, it makes a lot of sense for Intel to move to emulation soon.