D3d9On12 is recognized as dx12 but shaders is still limited as dx9

  • klotim
  • Topic Author
More
2 years 7 months ago - 2 years 7 months ago #1 by klotim D3d9on12 is recognized as dx12 but shaders is still limited as dx9. was created by klotim
Have you heard about d3d9on12? Its a thing microsoft made to wrap dx9 to dx12.
It kind of works.
The game recognizes the dxgi.dll ( it doesnt work with d3d12.dll, it gives a api not found error ).
However, the shaders is still limited as if its still dx9.

See log here:
Warning: Spoiler!
Last edit: 2 years 7 months ago by klotim.

Please Log in or Create an account to join the conversation.

  • crosire
More
2 years 7 months ago - 2 years 7 months ago #2 by crosire Replied by crosire on topic D3d9on12 is recognized as dx12 but shaders is still limited as dx9.
D3D9On12 is different compared to other wrappers like DXVK (who imitate being a DX driver). It sits below the DX runtime, implemented as a DDI (imitates being a graphics driver).

DXVK: Game -> DXVK (looks like D3D9 to the game) -> Vulkan/Graphics driver
D3D9On12: Game -> D3D9 driver -> D3D9On12 -> D3D12 driver -> Graphics driver

ReShade always sits in front of the first driver, so this is what happens:
DXVK: Game -> DXVK -> ReShade -> Vulkan/Graphics driver
D3D9On12: Game-> ReShade -> D3D9 driver -> D3D9On12 -> D3D12 driver

As such it doesn't matter you are using D3D9On12, all the limits of D3D9 are still exposed to ReShade and ReShade still operates in D3D9 mode.
Last edit: 2 years 7 months ago by crosire.

Please Log in or Create an account to join the conversation.