What is Default RHI? Should I set it to DirectX12 or Default?

Hey guys, what exactly is Default RHI in project settings? I have scoured the internet for this answer but didn’t find it. I understand what RHI stands for but how does it determine the output render quality especially with raytracing?

The reason I ask is because I want to use a tool which will crash UE4 if the default RHI is set to DirectX 12 (DirectX 12 I am assuming makes things look prettier). However if I set the default RHI to Default, the tool works flawlessly. I don’t mind this but just don’t know what I am losing by setting it to Default instead of DirectX12 ? Visually it looks like some raytracing disappears if I do that and some shadows become steppy.
Can provide comparison images if you guys want.

RHI = Rendering Hardware Interface. It’s the C++ interface which the high-level platform-independent rendering code in Unreal Engine 4 uses to communicate with the several platform-dependent implementations that exist for Direct3D, OpenGL, etc.

You are losing too much in terms of graphical beauty.
Check DirectX 11 vs DirectX 12 vs OpenGL videos from internet to see what exactly you lose.
Not just RayTracing btw.

Do found more about it?

I also get some error messages when set “default RHI” to “DirectX12”. I do not know why, GPU is capable of DX12 and driver are up to date. I also do not understand what happens when settings “default RHI” to “Default”. It seems then UE4 on Editor start and game start is using DX11. But why is that? Why “by default” ue4uses DX11 and not newer DX12, on a PC which is up to date and capable of DX12?

1 Like