Epic's GPUlightmass

I’ve updated the file and your issue should have been resolved.

1 Like

Yep, this issue is solved, thank you a lot. I find another one on an another level)) Gemme some time to narrow down list of suspects.

I’m sorry but I haven’t figured out why I’m getting “ensure exception”. May be screenshots will help:



Callstack:

[UnrealEditor-GPULightmass.dll] FComputeShaderUtils::ValidateGroupCount(const UE::Math::TIntVector3<int> &) RenderGraphUtils.h:434
[UnrealEditor-GPULightmass.dll] FComputeShaderUtils::AddPass<FFirstBounceRayGuidingCDFBuildCS>(FRDGBuilder &, FRDGEventName &&, ERDGPassFlags, const TShaderRefBase<FFirstBounceRayGuidingCDFBuildCS, FShaderMapPointerTable> &, const FShaderParametersMetadata *, FFirstBounceRayGuidingCDFBuildCS::FParameters *, TIntVector3<int>) RenderGraphUtils.h:563
[UnrealEditor-GPULightmass.dll] GPULightmass::FLightmapRenderer::Finalize(FRDGBuilder &) LightmapRenderer.cpp:2688
[UnrealEditor-GPULightmass.dll] GPULightmass::FLightmapRenderer::BackgroundTick() LightmapRenderer.cpp:4082
[UnrealEditor-GPULightmass.dll] GPULightmass::FSceneRenderState::BackgroundTick(FRHICommandList &) Scene.cpp:1730
[Inlined] [UnrealEditor-RenderCore.dll] UE::Core::Private::Function::TFunctionRefBase<UE::Core::Private::Function::TFunctionStorage<1>, void __cdecl(FRHICommandListImmediate &)>::operator()(FRHICommandListImmediate &) Function.h:471
[UnrealEditor-RenderCore.dll] `FRenderThreadCommandPipe::EnqueueAndLaunch'::`5'::<lambda_1>::operator()() RenderingThread.cpp:1546
[Inlined] [UnrealEditor-RenderCore.dll] UE::Core::Private::Function::TFunctionRefBase<UE::Core::Private::Function::TFunctionStorage<1>, void __cdecl(void)>::operator()() Function.h:471
[Inlined] [UnrealEditor-RenderCore.dll] TFunctionGraphTaskImpl<void __cdecl(void), 1>::DoTaskImpl(TUniqueFunction<void __cdecl(void)> &, Type, const TRefCountPtr<FBaseGraphTask> &) TaskGraphInterfaces.h:1111
[Inlined] [UnrealEditor-RenderCore.dll] TFunctionGraphTaskImpl<void __cdecl(void), 1>::DoTask(Type, const TRefCountPtr<FBaseGraphTask> &) TaskGraphInterfaces.h:1104
[UnrealEditor-RenderCore.dll] TGraphTask<TFunctionGraphTaskImpl<void __cdecl(void), 1> >::ExecuteTask() TaskGraphInterfaces.h:706
[UnrealEditor-Core.dll] UE::Tasks::Private::FTaskBase::TryExecuteTask() TaskPrivate.h:527
[Inlined] [UnrealEditor-Core.dll] FBaseGraphTask::Execute(TArray<FBaseGraphTask *, TSizedDefaultAllocator<32> > &, Type, bool) TaskGraphInterfaces.h:505
[UnrealEditor-Core.dll] FNamedTaskThread::ProcessTasksNamedThread(int, bool) TaskGraph.cpp:779
[UnrealEditor-Core.dll] FNamedTaskThread::ProcessTasksUntilQuit(int) TaskGraph.cpp:667
[UnrealEditor-RenderCore.dll] RenderingThreadMain(FEvent *) RenderingThread.cpp:318
[UnrealEditor-RenderCore.dll] FRenderingThread::Run() RenderingThread.cpp:476
[UnrealEditor-Core.dll] FRunnableThreadWin::Run() WindowsRunnableThread.cpp:156
[UnrealEditor-Core.dll] FRunnableThreadWin::GuardedRun() WindowsRunnableThread.cpp:71

This is an old issue with with first bounce ray guiding, you can either disable it or just run through, shouldn’t cause much harm. I’ll find some time to fix it later

1 Like

Does anyone miss good ol’ baked AO and AO mask? Asking cuz I do (and some other level artists do too) and I think it’s one of those critical features that GPULM never got.

Yep, disabling helped, thank you very much. Running through works, but around 35 objects left with unbuilded light in this case.

Release 06/23/2025:
Now you should see some improvements around chart boundaries:



Make sure that your lightmap resolution >= Min Lightmap Resolution in the static mesh editor.

4 Likes

Hi there,

if installed the patch for 5.6 but still have one issue. When I have my landscape in the scene the GPU Lightmass build crashes with the following error message:

Assertion failed: RayTracingGeometry != nullptr [File:D:\build++UE5\Sync\Engine\Source\Runtime\Renderer\Public\RayTracingMeshDrawCommands.h] [Line: 154

This is what my setup looks like:

  • I’m not using Nanite
  • Settings on the landscape are pretty much vanilla (besides the material of course)
  • Used default GPU Lightmass settings

Worth mentioning:

  • It seems to be related to the total number of components. When I create a new landscape with default settings and some sculpting the build doesn’t crash. If I import my heightmap and generate the landscape from it, the bake crashes. It also crashes if I create a new landscape with the same dimensions and component numbers my imported one would have.

These are the numbers my landscape has:

These are the default numbers for a landscape:

I tested various different numbers for “Total Number of Components” and it seems the crash starts to happen at around 900+. A terrain with 784 still built without issues.

Any idea what a fix could be for this? Without the landscape everything works perfectly fine.

PS: Sometimes I also see the following crash, especially if nothing besides the light setup (inlcuding Lightmass Importance Volume) is in the level:

Assertion failed: bHasExecuted [File:D:\build++UE5\Sync\Engine\Source\Runtime\RenderCore\Private\RenderGraphValidation.cpp] [Line: 75]
Render graph execution is required to ensure consistency with immediate mode.

Edit: In the meantime I was able to rebuild the landscape with fewer total components and pretty much matching the old one, which now allows me to build with GPU Lightmass. So, at this point just consider this to be a warning where there seems to be a limit.