Compiling shaders with DX12 features

tommybazar
Wed, 29 Aug 2018 12:33:33 +0000
Rendering

Hi everybody, I’m wondering, does/will the ShaderCompiler in UE4 support compiling shaders with D3D12 features?

Long story short - I have a compute shader that would be a lot nicer if I could use UAV-Typed loads for a RWTexture3D<float4> (or <uint16>).
In D3D11, the UAV-Typed loads are limited to 32bit primitives, but D3D11.3 and D3D12 already support typed loads for several more formats, two of them being R32G32B32A32_FLOAT and R16G16B16A16_UINT.

Now even with -dx12 command-line argument on startup, I still get the same error of

“Typed UAV loads are only supported for single-component 32-bit element types.”

(because the ShaderCompiler is compiling at SM5 level, so D3D11)

Now I’m kind of sure it actually does not support this as of now, since the highest feature level in ERHIFeatureLevel that you can specify is SM5 - so D3D11 feature level, but if anyone can prove me wrong, I would be a very happy programmer indeed.

reference - Typed Unordered Access View Loads - Win32 apps | Microsoft Learn

1 post - 1 participant