After updating my project to 5.6, it started crashing. I quickly found that the issue was Ray Reconstruction. I disabled it and the problem immediately went away. (Still using DLSS-SR and NIS sharpening).
Now, sometime later, I’m trying to fix RR. I updated to the latest version of the plugin, but I still have the same issue. The error I get is:
Fatal error: [File:D:\build++UE5\Sync\Engine\Source\Runtime\RHI\Private\PipelineStateCache.cpp] [Line: 533]
Shader compilation failures are Fatal.
The crash happens immediately after/during enabling RR via the Enable DLSS-RR
node.
That line in the error is for HandlePipelineCreationFailure
, so something to do with shader compilation I suppose.
I’m mostly working with blueprints on this, at least for now.
For the record, I am first ensuring that HW Lumen is on and checking that Is DLSS-RR Supported
returns true, before attempting to enable RR.
There is also the case of the r.Lumen.Reflections.BilateralFilter
issue. The DLSS documentation mentions an issue with UE5.2 and UE5.3 that necessitates setting this to 0 via engine config because setting it at runtime causes a crash. This was fixed at some point by Epic, but Nvidia still expects you to handle it yourself (at least as of when I last checked on whatever was the newest version of the DLSS plugin before UE5.6) even though you can change it at runtime now. Regardless, for the purposes of debugging RR, I just set r.Lumen.Reflections.BilateralFilter=0
in the config for now, so that I can rule out this issue.
Any idea why RR crashes the engine?
Edit:
Some more logs
[2025.10.21-08.59.40:997][118]LogD3D12RHI: Error: Failed to create pipeline state with combined hash EA98E289955B3282, error 80070057.
[2025.10.21-08.59.40:998][118]LogD3D12RHI: Warning: Failed to create graphics PSO with combined hash 0xEA98E289955B3282:
AlphaToCoverageEnable = 0
IndependentBlendEnable = 1
RenderTarget[0] = { 0, 0, 0x2, 0x1, 0x1, 0x2, 0x1, 0x1, 0x0, 0xF }
RenderTarget[1] = { 0, 0, 0x2, 0x1, 0x1, 0x2, 0x1, 0x1, 0x0, 0xF }
RenderTarget[2] = { 0, 0, 0x2, 0x1, 0x1, 0x2, 0x1, 0x1, 0x0, 0xF }
RenderTarget[3] = { 0, 0, 0x2, 0x1, 0x1, 0x2, 0x1, 0x1, 0x0, 0xF }
RenderTarget[4] = { 0, 0, 0x2, 0x1, 0x1, 0x2, 0x1, 0x1, 0x0, 0xF }
SampleMask = 0xFFFFFFFF
FillMode = 3
CullMode = 1
FrontCounterClockwise = 1
DepthBias = 0
DepthBiasClamp = 0.000000
SlopeScaledDepthBias = 0.000000
DepthClipEnable = 1
MultisampleEnable = 1
AntialiasedLineEnable = 0
ForcedSampleCount = 0
ConservativeRaster = 0
DepthEnable = 0
DepthWriteMask = 0
DepthFunc = 8
StencilEnable = 0
StencilReadMask = 0xFF
StencilWriteMask = 0xFF
FrontFace = { 1, 1, 1, 8 }
BackFace = { 1, 1, 1, 8 }
InputLayout.NumElements = 2
InputLayout[0] = { "ATTRIBUTE", 0, 0x2, 0, 0, 0x0, 0 }
InputLayout[1] = { "ATTRIBUTE", 1, 0x10, 0, 16, 0x0, 0 }
IBStripCutValue = 0x0
PrimitiveTopologyType = 0x3
NumRenderTargets = 5
RTVFormats[0] = 0x1A
RTVFormats[1] = 0x1A
RTVFormats[2] = 0xA
RTVFormats[3] = 0x29
RTVFormats[4] = 0x29
DSVFormat = 0x0
SampleDesc = { 1, 0 }
NodeMask = 0x1
Flags = 0x0
Everything else seems same as without RR, so this is the relevant part of the log that prints immediately as Enable DLSS-RR
is called.
I enabled r.ShaderDevelopmentMode=1
so I assume that last part of the log snippet I added is the shader that fails, but that doesn’t really tell me anything…