GPU Lightmass crashing

Hello All,

I’m hoping for a quick turnaround on this.

I am getting a crash with GPU Lighmass. Installed Editor debugging symbols this morning to get some more detail.

Dell Precision Laptop with mobile RTX 4090 and 128GB of ram.

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000078

UnrealEditor_RenderCore!FRDGParameterStruct::EnumerateUniformBuffers<FRDGParameterStruct::Enumerate<FRDGUserValidation::ValidateAddPass’::2'::<lambda_8> >'::2’::<lambda_1> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphParameters.inl:50]
UnrealEditor_RenderCore!FRDGParameterStruct::Enumerate<FRDGUserValidation::ValidateAddPass'::2’::<lambda_8> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphParameters.inl:13]
UnrealEditor_RenderCore!FRDGParameterStruct::EnumerateUniformBuffers<FRDGParameterStruct::Enumerate<FRDGUserValidation::ValidateAddPass’::2'::<lambda_8> >'::2’::<lambda_1> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphParameters.inl:50]
UnrealEditor_RenderCore!FRDGParameterStruct::Enumerate<FRDGUserValidation::ValidateAddPass'::2’::<lambda_8> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphParameters.inl:13]
UnrealEditor_RenderCore!FRDGUserValidation::ValidateAddPass() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderGraphValidation.cpp:942]
UnrealEditor_RenderCore!FRDGBuilder::SetupParameterPass() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderGraphBuilder.cpp:2426]
UnrealEditor_GPULightmass!FRDGBuilder::AddPass<GPULightmass::FLightmapGBufferPassParameters,GPULightmass::FLightmapRenderer::Finalize'::323’::<lambda_16> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphBuilder.inl:313]
UnrealEditor_GPULightmass!GPULightmass::FLightmapRenderer::Finalize() [D:\build++UE5\Sync\Engine\Plugins\Experimental\GPULightmass\Source\GPULightmass\Private\LightmapRenderer.cpp:2309]
UnrealEditor_GPULightmass!GPULightmass::FLightmapRenderer::BackgroundTick() [D:\build++UE5\Sync\Engine\Plugins\Experimental\GPULightmass\Source\GPULightmass\Private\LightmapRenderer.cpp:3796]
UnrealEditor_GPULightmass!GPULightmass::FSceneRenderState::BackgroundTick() [D:\build++UE5\Sync\Engine\Plugins\Experimental\GPULightmass\Source\GPULightmass\Private\Scene\Scene.cpp:1668]
UnrealEditor_GPULightmass!TEnqueueUniqueRenderCommandType<GPULightmass::FScene::BackgroundTick'::31’::BackgroundTickRenderThreadName,GPULightmass::FScene::BackgroundTick'::31’::<lambda_2> >::DoTask() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderingThread.h:209]
UnrealEditor_GPULightmass!TGraphTask<TEnqueueUniqueRenderCommandType<GPULightmass::FScene::BackgroundTick'::31’::BackgroundTickRenderThreadName,GPULightmass::FScene::BackgroundTick'::31’::<lambda_2> > >::ExecuteTask() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Public\Async\TaskGraphInterfaces.h:1265]
UnrealEditor_Core!FNamedTaskThread::ProcessTasksNamedThread() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:758]
UnrealEditor_Core!FNamedTaskThread::ProcessTasksUntilQuit() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:649]
UnrealEditor_RenderCore!RenderingThreadMain() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:411]
UnrealEditor_RenderCore!FRenderingThread::Run() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:537]
UnrealEditor_Core!FRunnableThreadWin::Run() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:149]

Well I thought I solved it my nuking some level build data and changing some project settings, but now Im getting a new error. Note: after getting a bake to go through, I updated a slew of levels through dataprep so I have all of the needed modeling updates.

Fatal error: [File:D:\build++UE5\Sync\Engine\Source\Runtime\RHICore\Public\RHICoreShader.h] [Line: 147] Uniform buffer bound to slot 1 is not what the shader expected: Bound : Uniform Buffer[FParameters] with Hash[0x065310a9] Expected : Uniform Buffer[Scene] with Hash[0x10501321] Shader Name : Layout CB Size : 336 Layout Num Resources : 20 Resource Types : 6 6 13 13 13 13 13 13 13 13 13 16 9 16 9 9 8 21 21 16

UnrealEditor_D3D12RHI!UE::RHICore::SetResourcesFromTables<SetRayTracingShaderResources<FD3D12RayTracingLocalResourceBinder>'::2’::FBindings &,FRHIUniformBuffer * const *,unsigned int>() [D:\build++UE5\Sync\Engine\Source\Runtime\RHICore\Public\RHICoreShader.h:147]
UnrealEditor_D3D12RHI!SetRayTracingShaderResources() [D:\build++UE5\Sync\Engine\Source\Runtime\D3D12RHI\Private\D3D12RayTracing.cpp:4895]
UnrealEditor_D3D12RHI!SetRayTracingHitGroup() [D:\build++UE5\Sync\Engine\Source\Runtime\D3D12RHI\Private\D3D12RayTracing.cpp:5366]
UnrealEditor_D3D12RHI!ParallelForImpl::ParallelForInternal<FD3D12CommandContext::RHISetRayTracingBindings’::2'::<lambda_1>,ParallelForWithExistingTaskContext<FD3D12CommandContext::RHISetRayTracingBindings'::2’::FTaskContext,FD3D12CommandContext::RHISe() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Async\ParallelFor.h:340] UnrealEditor_D3D12RHI!LowLevelTasks::TTaskDelegate<LowLevelTasks::FTask * __cdecl(bool),48>::TTaskDelegateImpl<LowLevelTasks::FTask::Init<ParallelForImpl::ParallelForInternal<FD3D12CommandContext::RHISetRayTracingBindings’::2'::<lambda_1>,ParallelForWit() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Public\Async\Fundamental\TaskDelegate.h:171]
UnrealEditor_Core!LowLevelTasks::FTask::ExecuteTask() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Public\Async\Fundamental\Task.h:627]
UnrealEditor_Core!LowLevelTasks::FScheduler::ExecuteTask() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Async\Fundamental\Scheduler.cpp:150]
UnrealEditor_Core!LowLevelTasks::FScheduler::TryExecuteTaskFrom<LowLevelTasks::TLocalQueueRegistry<1024>::TLocalQueue,&LowLevelTasks::TLocalQueueRegistry<1024>::TLocalQueue::DequeueGlobal,0>() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Async\Fundamental\Scheduler.cpp:350]
UnrealEditor_Core!LowLevelTasks::FScheduler::WorkerMain() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Async\Fundamental\Scheduler.cpp:378]
UnrealEditor_Core!UE::Core::Private::Function::TFunctionRefCaller<LowLevelTasks::FScheduler::CreateWorker'::2’::<lambda_1>,void __cdecl(void)>::Call() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Public\Templates\Function.h:480]
UnrealEditor_Core!FThreadImpl::Run() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\HAL\Thread.cpp:69]
UnrealEditor_Core!FRunnableThreadWin::Run() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:149]

Well, now I am getting a new error. Seems like this one is not sure to happen, more like 50-50.

Assertion failed: ResourceMap.Contains(Resource) [File:D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderGraphValidation.cpp] [Line: 790] Resource at 00000B58EC266200 registered with pass LightmapGBufferTile is not part of the graph and is likely a dangling pointer or garbage value.

UnrealEditor_RenderCore!FRDGUserValidation::ValidateAddPass'::2’::<lambda_8>::operator()() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderGraphValidation.cpp:840]
UnrealEditor_RenderCore!FRDGParameterStruct::Enumerate<FRDGUserValidation::ValidateAddPass'::2’::<lambda_8> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphParameters.inl:15]
UnrealEditor_RenderCore!FRDGParameterStruct::EnumerateUniformBuffers<FRDGParameterStruct::Enumerate<FRDGUserValidation::ValidateAddPass’::2'::<lambda_8> >'::2’::<lambda_1> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphParameters.inl:50]
UnrealEditor_RenderCore!FRDGParameterStruct::Enumerate<FRDGUserValidation::ValidateAddPass'::2’::<lambda_8> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphParameters.inl:13]
UnrealEditor_RenderCore!FRDGUserValidation::ValidateAddPass() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderGraphValidation.cpp:942]
UnrealEditor_RenderCore!FRDGBuilder::SetupParameterPass() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderGraphBuilder.cpp:2426]
UnrealEditor_GPULightmass!FRDGBuilder::AddPass<GPULightmass::FLightmapGBufferPassParameters,GPULightmass::FLightmapRenderer::Finalize'::323’::<lambda_16> >() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderGraphBuilder.inl:313]
UnrealEditor_GPULightmass!GPULightmass::FLightmapRenderer::Finalize() [D:\build++UE5\Sync\Engine\Plugins\Experimental\GPULightmass\Source\GPULightmass\Private\LightmapRenderer.cpp:2309]
UnrealEditor_GPULightmass!GPULightmass::FLightmapRenderer::BackgroundTick() [D:\build++UE5\Sync\Engine\Plugins\Experimental\GPULightmass\Source\GPULightmass\Private\LightmapRenderer.cpp:3796]
UnrealEditor_GPULightmass!GPULightmass::FSceneRenderState::BackgroundTick() [D:\build++UE5\Sync\Engine\Plugins\Experimental\GPULightmass\Source\GPULightmass\Private\Scene\Scene.cpp:1668]
UnrealEditor_GPULightmass!TEnqueueUniqueRenderCommandType<GPULightmass::FScene::BackgroundTick'::31’::BackgroundTickRenderThreadName,GPULightmass::FScene::BackgroundTick'::31’::<lambda_2> >::DoTask() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Public\RenderingThread.h:209]
UnrealEditor_GPULightmass!TGraphTask<TEnqueueUniqueRenderCommandType<GPULightmass::FScene::BackgroundTick'::31’::BackgroundTickRenderThreadName,GPULightmass::FScene::BackgroundTick'::31’::<lambda_2> > >::ExecuteTask() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Public\Async\TaskGraphInterfaces.h:1265]
UnrealEditor_Core!FNamedTaskThread::ProcessTasksNamedThread() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:758]
UnrealEditor_Core!FNamedTaskThread::ProcessTasksUntilQuit() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:649]
UnrealEditor_RenderCore!RenderingThreadMain() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:411]
UnrealEditor_RenderCore!FRenderingThread::Run() [D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:537]
UnrealEditor_Core!FRunnableThreadWin::Run() [D:\build++UE5\Sync\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:149]

So, for anyone experiencing the similar errors: I was able to get pretty reliable bakes by:

  1. switching from epic to high scalability settings
  2. reducing screen resolution to 25% in project settings.
  3. switching to unlit mode
  4. reducing the size of the viewport (by making details panel and content drawer lager before baking)
  5. reduce the “lightmap tile pool size” to its minimum.
  6. Let the bake run in slow mode for a minute or so before switching off real-time updates.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.