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:
- switching from epic to high scalability settings
- reducing screen resolution to 25% in project settings.
- switching to unlit mode
- reducing the size of the viewport (by making details panel and content drawer lager before baking)
- reduce the “lightmap tile pool size” to its minimum.
- Let the bake run in slow mode for a minute or so before switching off real-time updates.