Description

The cause of the crash is out-of-range access to the array.
ExcludeDecals eliminates the mesh instance to which the decal material is assigned, but it seems that the MeshCommand has been registered.

The relevant part is in the GatherRayTracingWorldInstances function of DeferredShadingRenderer.cpp.
There is a part of this function that checks the ExcludeDecals flag, but I have confirmed that the crash can be avoided by moving this branch instruction before the previous command addition process.

.\Engine\Source\Runtime\Renderer\Private\DeferredShadingRenderer.cpp
[Link Removed]

Steps to Reproduce
  1. Launch the editor with Enable Raytracing
  2. Place the cube on the level and assign the decal material
  3. Enter r.RayTracing.ExcludeDecals 1 to console command
  4. Crash when moving cube
    [Link Removed]

I have attached this settings project.
Setting r.RayTracing.ExcludeDecals 1 in this project will reproduce the crash.
[Link Removed]

 
 

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-99710 in the post.

1
Login to Vote

Fixed
ComponentUE - Graphics Features - Lumen
Affects Versions4.25
Target Fix4.26
Fix Commit14328853
Release Commit14328853
CreatedSep 16, 2020
ResolvedSep 16, 2020
UpdatedSep 19, 2021