Description

The following check fails occasionally:

check(InstanceCustomData.Num() == (NumCustomDataFloats * InstanceSceneData.Num()));

I was not able to narrow down more precise repro steps, but it appears that the problem is somehow correlated with what happens while shaders are still compiling. I have not dug too deeply into it, but it looks like during shader compilation there is a massive number of primitives that are constantly getting added, which may stress certain engine systems and expose some bugs.

[Image Removed]

Steps to Reproduce
  • Run CitySample Development Editor config with "-game" command line argument.
  • After spawning in the game and while shaders are still compiling, try to move the camera or the character around for a few minutes
Callstack

UnrealEditor-Engine.dll!FPrimitiveSceneProxy::UpdateInstances_RenderThread(const FInstanceUpdateCmdBuffer & CmdBuffer, const UE::Math::TBoxSphereBounds<double,double> & InBounds, const UE::Math::TBoxSphereBounds<double,double> & InLocalBounds, const UE::Math::TBoxSphereBounds<double,double> & InStaticMeshBounds) Line 723 C++
UnrealEditor-Renderer.dll!FScene::UpdateAllPrimitiveSceneInfos(FRDGBuilder & GraphBuilder, bool bAsyncCreateLPIs) Line 5112 C++
UnrealEditor-Renderer.dll!FDeferredShadingSceneRenderer::Render(FRDGBuilder & GraphBuilder) Line 1980 C++
UnrealEditor-Renderer.dll!RenderViewFamily_RenderThread(FRHICommandListImmediate & RHICmdList, FSceneRenderer * SceneRenderer) Line 4233 C++
UnrealEditor-Renderer.dll!FRendererModule::BeginRenderingViewFamilies::__l84::<lambda>(FRHICommandListImmediate & RHICmdList) Line 4519 C++
[Inline Frame] UnrealEditor-Renderer.dll!TEnqueueUniqueRenderCommandType<`FRendererModule::BeginRenderingViewFamilies'::`84'::FDrawSceneCommandName,void <lambda>(FRHICommandListImmediate &)>::DoTask(ENamedThreads::Type) Line 193 C++
UnrealEditor-Renderer.dll!TGraphTask<TEnqueueUniqueRenderCommandType<`FRendererModule::BeginRenderingViewFamilies'::`84'::FDrawSceneCommandName,void <lambda>(FRHICommandListImmediate &)>>::TryExecuteTask::__l2::<lambda>(UE::Tasks::Private::FTaskBase & Task) Line 719 C++
UnrealEditor-Renderer.dll!UE::Tasks::Private::FTaskBase::TryExecute(void[Image Removed](UE::Tasks::Private::FTaskBase &) TaskBody) Line 505 C++
[Inline Frame] UnrealEditor-Core.dll!FBaseGraphTask::Execute(TArray<FBaseGraphTask *,TSizedDefaultAllocator<32>> &) Line 513 C++
UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksNamedThread(int QueueIndex, bool bAllowStall) Line 761 C++
UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksUntilQuit(int QueueIndex) Line 650 C++
UnrealEditor-Core.dll!FTaskGraphCompatibilityImplementation::ProcessThreadUntilRequestReturn(ENamedThreads::Type CurrentThread) Line 2128 C++
UnrealEditor-RenderCore.dll!RenderingThreadMain(FEvent * TaskGraphBoundSyncEvent) Line 380 C++
UnrealEditor-RenderCore.dll!FRenderingThread::Run() Line 546 C++
UnrealEditor-Core.dll!FRunnableThreadWin::Run() Line 149 C++
UnrealEditor-Core.dll!FRunnableThreadWin::GuardedRun() Line 71 C++
kernel32.dll!00007ffea1d17034() Unknown
ntdll.dll!00007ffea3b22651() Unknown

Have Comments or More Details?

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

0
Login to Vote

Cannot Reproduce
ComponentUE - Rendering Architecture
Affects Versions5.1
Target Fix5.5
CreatedMay 5, 2022
ResolvedOct 1, 2024
UpdatedOct 4, 2024
View Jira Issue