Failed check in FRayTracingGeometryManager::SetupBuildParams when modifying raytracing configs

Running a cooked build on console, we get a failed check in FRayTracingGeometryManager::SetupBuildParams when modifying raytracing parameters (in our case it’s r.RayTracing.Culling.Radius but I think it’s irrelevant and just triggering a rebuild of raytracing geometries) because the request owner’s RayTracingGeometryRHI is null. The request initializer’s debug name indicates an FCableSceneProxy.

I traced it back to CableComponent.cpp line 473, which was recently added. The issue seems to be that StaticRayTracingGeometry is valid, but it has been evicted, and therefore its RHI resource is null.

I can avoid the crash by checking StaticRayTracingGeometry.IsEvicted() before calling RequestBuildIfNeeded, but I was wondering if there may be a better fix?

Steps to Reproduce

Confirm I have the same issue on Development PS5. Running in debug is fine, and no crash. This seems to validate this is a timing issue as per the comment in the file CableComponent.cpp line 473:

// TODO: Move this call to SetDynamicData_RenderThread(…) once race condition with FRayTracingGeometryManager::Tick() is addressed.

i can always disable the RT on the cable with r.raytracing.geometry.cable 0 but it is temp fix until EPIC fixed the cablecomponent.

Thanks for raising that issue!

We fixed it recently in: https://github.com/EpicGames/UnrealEngine/commit/35304c19f81f2e7dc14b4cdff1592235a356b932. Let us know if you have any more issues.