The order of passes related to Decal rendering (without the DBuffer) and CustomDepth is changed by the CVar "r.Lumen.AsyncCompute", even when Lumen is not enabled.
This causes Decal Materials that rely on CustomDepth / CustomStencil to be rendered before CustomDepth and CustomStencil have been rendered, resulting in incorrect visuals.
Also tested on //UE5/Release-5.5, CL: 36995792
Originally Identified on //UE5/Release-5.3, CL: 32480491
1. Download the Licensee's test project and open
https://udn.unrealengine.com/s/contentdocument/069QP00000L1hwVYAR
2. In the Post-Process Volume, set both the Global Illumination Method and the Reflection Method to "None", disabling Lumen.
3. Observe the Decal Material "/Game/M_TestDecalMaterial" reading from CustomStencil for the Base Color.
4. Observe the cube "Cube" is writing to Custom Depth pass with a Stencil value of 255.
5. Observe that the cube "Cube" is not colored white as expected by the decal "M_TestDecalMaterial".
6. Run the console command "r.Lumen.AsyncCompute 0"
7. Observe that the cube "Cube" is now correctly colored white by the decal "M_TestDecalMaterial".
8. Take a GPU Dump with "r.Lumen.AsyncCompute" set to 0, then take a second GPU Dump with the "r.Lumen.AsyncCompute" set to 1.
9. Compare the order of events from BasePass to CustomDepth and Decal passes. Observe that the order changes based on the CVar "r.Lumen.AsyncCompute", despite Lumen not being enabled.
10. Enable Lumen GI and Reflections in the Post-Process volume, and set "r.Lumen.AsyncCompute" to 1.
11. Repeat steps 5, 6, and 7
12. Observe that the issue remains with Lumen enabled.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-227727 in the post.
0 |
Component | UE - Graphics Features |
---|---|
Affects Versions | 5.3.2, 5.5, 5.4.4 |
Target Fix | 5.6 |
Created | Oct 15, 2024 |
---|---|
Resolved | Oct 16, 2024 |
Updated | Oct 16, 2024 |