# Epic's GPUlightmass

**URL:** <https://forums.unrealengine.com/t/epics-gpulightmass/139357>\
**Category:** Rendering\
**Tags:** unreal-engine\
**Created:** [March 5, 2020, 12:52pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357 "2020-03-05T12:52:56Z")\
**Posts on this page:** 20\
**Page:** 40

<div class="post-metadata">

**Author:** ![maxbrown](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/maxbrown/32/1194506_2.png) [@maxbrown](https://forums.unrealengine.com/u/maxbrown)\
**Post date:** [November 21, 2025, 8:14pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/793 "2025-11-21T20:14:34Z")

</div>

@yujiang.wang In 5.7 substrate is enabled by default. The vrTemplate map uses a Blendable gbuffer for substrate. After running gpuLighmass, the results don’t look good - almost as if there’s no bounce light? When changing that gbuffer to Adaptive in the project settings, all works nice again. Makes sense?

Just in case someone uses that template as a start for a project (I did) and runs into the same issue.

---

<div class="post-metadata">

**Author:** ![yujiang.wang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@yujiang.wang](https://forums.unrealengine.com/u/yujiang.wang)\
**Post date:** [November 22, 2025, 4:37am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/794 "2025-11-22T04:37:16Z")

</div>

Updated. You can have a try.

---

<div class="post-metadata">

**Author:** ![maxbrown](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/maxbrown/32/1194506_2.png) [@maxbrown](https://forums.unrealengine.com/u/maxbrown)\
**Post date:** [November 22, 2025, 10:40am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/795 "2025-11-22T10:40:02Z")

</div>

Thanks! It works again. I do see a visual difference but that would be as expected? See video. I can send you the project if its something related to gpuLM.

![](https://d3kjluh73b9h9o.cloudfront.net/optimized/4X/5/d/1/5d1a6c27382f95817b05a8e318c870d910a0ed46_2_690x388.jpeg)https://www.youtube.com/embed/zOKki5dR5T0?feature=oembed&wmode=opaque

---

<div class="post-metadata">

**Author:** ![yujiang.wang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@yujiang.wang](https://forums.unrealengine.com/u/yujiang.wang)\
**Post date:** [November 22, 2025, 11:54am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/796 "2025-11-22T11:54:40Z")

</div>

> Thanks! It works again. I do see a visual difference but that would be as expected? See video. I can send you the project if its something related to gpuLM.

Before my fix non-Substrate materials when Substrate was enabled were compiled to empty materials. Based on how the path tracer works I made them use the old, non-Substrate path. However I’m fairly new to Substrate and don’t really know how much the non-Substrate path vs Substrate-adaptive (which converts your material to Substrate automatically) will differ. Maybe you can compare how the path tracer behaves and have some idea.

---

<div class="post-metadata">

**Author:** ![maxbrown](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/maxbrown/32/1194506_2.png) [@maxbrown](https://forums.unrealengine.com/u/maxbrown)\
**Post date:** [November 22, 2025, 12:32pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/797 "2025-11-22T12:32:23Z")

</div>

The path tracer result when using blend and adaptive is totally different (see pic). Maybe some of my materials aren’t supported (hdr emissive sky)?! I will use the adaptive gbuffer for now until I’ve switched everything to substrate.

 ![pt](https://d3kjluh73b9h9o.cloudfront.net/original/4X/4/4/8/448e20c42438df1348a4ed19c73dc01f820323f8.jpeg)

---

<div class="post-metadata">

**Author:** ![Matt3D](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Matt3D](https://forums.unrealengine.com/u/Matt3D)\
**Post date:** [November 24, 2025, 2:05am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/798 "2025-11-24T02:05:04Z")

</div>

Hi @yujiang.wang

Currently I am porting older environments into 5.6.1 with your GPU Lightmass patch, pretty much all of these environments were baked with GPU lightmass in older versions.

When we try to bake environments with landscape actors in them, we get an instant crash

I’ve tried  
-Converting the landscapes to nanite  
-Splitting up the landscapes into smaller landscapes

Neither fixed the problem, however, I was able to use the merge actor tool to convert the landscape and its material into a baked static mesh, this workaround allowed the environment to bake but this results in a loss in both mesh and texture detail on the landscape.

Any ideas on a fix?

```auto
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: === Critical error: ===
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error:
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: Assertion failed: RayTracingGeometry != nullptr \[File:E:\\P4New\\Edge\\Prod-5.6\\Engine\\Source\\Runtime\\Renderer\\Public\\RayTracingMeshDrawCommands.h\] \[Line: 154\]
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error:
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error:
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error:
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff9513f3458 UnrealEditor-Core.dll!FDebug::CheckVerifyFailedImpl2() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff93043b085 UnrealEditor-Renderer.dll!FDynamicRayTracingMeshCommandContext::FinalizeCommand() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff9300ea88a UnrealEditor-Renderer.dll!FRayTracingMeshProcessor::BuildRayTracingMeshCommands<FMeshMaterialShader,TBasePassShaderElementData >() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff930146b87 UnrealEditor-Renderer.dll!FRayTracingMeshProcessor::ProcessPathTracing() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff930477f18 UnrealEditor-Renderer.dll!FRayTracingMeshProcessor::TryAddMeshBatch() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff930419a45 UnrealEditor-Renderer.dll!FRayTracingMeshProcessor::AddMeshBatch() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff8ebae8d9b UnrealEditor-GPULightmass.dll!GPULightmass::FSceneRenderState::SetupRayTracingScene() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff8ebb01e88 UnrealEditor-GPULightmass.dll!GPULightmass::FVolumetricLightmapRenderer::VoxelizeScene() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff8eba49658 UnrealEditor-GPULightmass.dll!UE::Core::Private::Function::TFunctionRefCaller<GPULightmass::FScene::BackgroundTick'::34’::<lambda_1>,void,FRHICommandListImmediate &>::Call() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff95a0874d7 UnrealEditor-RenderCore.dll!FRenderThreadCommandPipe::EnqueueAndLaunch'::5’::<lambda_1>::operator()() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff95a0ae328 UnrealEditor-RenderCore.dll!TGraphTask<TFunctionGraphTaskImpl<void \__cdecl(void),1> >::ExecuteTask() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff9510dea82 UnrealEditor-Core.dll!UE::Tasks::Private::FTaskBase::TryExecuteTask() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff9510d1b1f UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksNamedThread() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff9510d219e UnrealEditor-Core.dll!FNamedTaskThread::ProcessTasksUntilQuit() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff95a0d2719 UnrealEditor-RenderCore.dll!RenderingThreadMain() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff95a0d3804 UnrealEditor-RenderCore.dll!FRenderingThread::Run() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff95176350d UnrealEditor-Core.dll!FRunnableThreadWin::Run() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff95175c50f UnrealEditor-Core.dll!FRunnableThreadWin::GuardedRun() []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error: \[Callstack\] 0x00007ff9d54ae8d7 KERNEL32.DLL!UnknownFunction []
\[2025.11.21-05.16.50:066\]\[775\]LogWindows: Error:

```

---

<div class="post-metadata">

**Author:** ![yujiang.wang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@yujiang.wang](https://forums.unrealengine.com/u/yujiang.wang)\
**Post date:** [November 24, 2025, 8:41am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/799 "2025-11-24T08:41:28Z")

</div>

> Any ideas on a fix?

Increase the value of `r.RayTracing.ResidentGeometryMemoryPoolSizeInMB`. In the latest 5.7.0 GPULM won’t crash but the geometries over the pool limit will still be removed.

---

<div class="post-metadata">

**Author:** ![MarioTitina](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@MarioTitina](https://forums.unrealengine.com/u/MarioTitina)\
**Post date:** [December 5, 2025, 3:55pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/800 "2025-12-05T15:55:50Z")

</div>

Hi guys, one question, does this GPU lightmass versione from our lord and savior @yujiang.wang work with the experimental WP static light support? I tried but i cannot seem to make it work but maybe i’m just doing it wrong.

Thanks you so much!

---

<div class="post-metadata">

**Author:** ![yujiang.wang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@yujiang.wang](https://forums.unrealengine.com/u/yujiang.wang)\
**Post date:** [December 6, 2025, 6:43am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/801 "2025-12-06T06:43:10Z")

</div>

I haven’t done anything related to WP in GPULM, so it probably won’t work

---

<div class="post-metadata">

**Author:** ![yujiang.wang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@yujiang.wang](https://forums.unrealengine.com/u/yujiang.wang)\
**Post date:** [December 6, 2025, 7:05am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/802 "2025-12-06T07:05:21Z")

</div>

# Release 5.7.1 2025.12.06

[https://downloads.luoshuangfw.io/gpulm-releases/GPULM-5.7.1.7z](https://downloads.luoshuangfw.io/gpulm-releases/GPULM-5.7.1.7z)  
[Back to release list](https://forums.unrealengine.com/t/epics-gpulightmass/139357/667)

---

<div class="post-metadata">

**Author:** ![Camta005](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/camta005/32/88710_2.png) [@Camta005](https://forums.unrealengine.com/u/Camta005)\
**Post date:** [December 6, 2025, 9:22am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/803 "2025-12-06T09:22:57Z")

</div>

Thanks @yujiang.wang I really appreciate this.

---

<div class="post-metadata">

**Author:** ![MarioTitina](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@MarioTitina](https://forums.unrealengine.com/u/MarioTitina)\
**Post date:** [December 6, 2025, 6:42pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/804 "2025-12-06T18:42:17Z")

</div>

Any possibility you will be adding it in the future?

Thank you for the amazing work and the support!

---

<div class="post-metadata">

**Author:** ![yujiang.wang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@yujiang.wang](https://forums.unrealengine.com/u/yujiang.wang)\
**Post date:** [December 7, 2025, 6:20am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/805 "2025-12-07T06:20:41Z")

</div>

# Tip: Improve real-time preview responsiveness in editor

[![](https://d3kjluh73b9h9o.cloudfront.net/original/4X/6/5/b/65b6b3d6548b4fb226b0eb08368cf86cc4b138d9.jpeg "VTCompare") ](https://vimeo.com/1144217812)

You can add the following virtual texturing related CVars and settings to your `DefaultEngine.ini` to improve GPULM’s VT-based real-time preview responsiveness:

```ini
[/Script/Engine.RendererSettings]
r.VT.MaxUploadsPerFrameInEditor=128
r.VT.MaxContinuousUpdatesPerFrameInEditor=128
r.VT.PageFreeThreshold=4

[/Script/Engine.VirtualTexturePoolConfig]
+Pools=(Formats=(PF_A32B32G32R32F),MinTileSize=0,MaxTileSize=0,SizeInMegabyte=512,bEnableResidencyMipMapBias=False,bAllowSizeScale=False,MinScaledSizeInMegabyte=0,MaxScaledSizeInMegabyte=0)

```

These settings should make the viewport update faster especially when turning camera.

[Back to release list](https://forums.unrealengine.com/t/epics-gpulightmass/139357/667)

---

<div class="post-metadata">

**Author:** ![dr\_of\_partyology](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@dr\_of\_partyology](https://forums.unrealengine.com/u/dr_of_partyology)\
**Post date:** [December 19, 2025, 5:44am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/806 "2025-12-19T05:44:28Z")

</div>

Thanks for putting the effort into getting this working. It’s very much appreciated.

Is it normal for GPU lighmass to force virtual shadow maps to be active when the plugin is enabled? Is it even possible to use cascade shadow maps and stationary lights here? The option to set the shadow map method in the project settings becomes greyed out (disabled). I even tried “r.Shadow.Virtual.Enable=0” in the ini, but if set my directional light to stationary, sure enough it’s using expensive virtual shadow maps even though the details say it’s using cascade maps. Am I stuck with CPU lightmass if I need stationary lights? I’m using GPULM 5.6.0 BTW.

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/1/6/4/164e7a3e61fbbe1e2cb683634d490b444b9fd204.png)

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/f/a/7fa75cb9968b4f1d170e73cef0bfa4282d2f99fc.png)

---

<div class="post-metadata">

**Author:** ![yujiang.wang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@yujiang.wang](https://forums.unrealengine.com/u/yujiang.wang)\
**Post date:** [December 19, 2025, 8:04am UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/807 "2025-12-19T08:04:33Z")

</div>

> Is it normal for GPU lighmass to force virtual shadow maps to be active when the plugin is enabled?

No, GPULM does not force VSM. If it says Shadow Maps then it is. If you’re using Forward Rendering then VSM is forced disabled. And CSM can be expensive specifically on stationary lights due to so-called preshadows. The traditional solution for this is to enable dynamic shadow distance for near-field shadows on stationary lights and use Distance Field shadows above a certain distance.

---

<div class="post-metadata">

**Author:** ![Ozykz](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/ozykz/32/1194601_2.png) [@Ozykz](https://forums.unrealengine.com/u/Ozykz)\
**Post date:** [December 19, 2025, 8:57pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/808 "2025-12-19T20:57:21Z")

</div>

Would also be very interested in world partition static lighting support!

---

<div class="post-metadata">

**Author:** ![glitchered](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/glitchered/32/768299_2.png) [@glitchered](https://forums.unrealengine.com/u/glitchered)\
**Post date:** [December 19, 2025, 9:05pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/809 "2025-12-19T21:05:37Z")

</div>

how fat you want the games to be? 300 GB storage you can’t buy? xcuse me…

you cannot bake lightmaps for a 8 square kilometer radius. ■■■■ this ■■■■.

you can bake some compressed proxy gi for that, tho, that can stream and run on concoles.

---

<div class="post-metadata">

**Author:** ![motorsep](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/motorsep/32/918698_2.png) [@motorsep](https://forums.unrealengine.com/u/motorsep)\
**Post date:** [December 19, 2025, 9:25pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/810 "2025-12-19T21:25:10Z")

</div>

> [@glitchered](#):
>
> can stream and run on concoles

Not everyone is targeting consoles. Lot’s of indies target PC.

---

<div class="post-metadata">

**Author:** ![glitchered](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/glitchered/32/768299_2.png) [@glitchered](https://forums.unrealengine.com/u/glitchered)\
**Post date:** [December 19, 2025, 9:34pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/811 "2025-12-19T21:34:08Z")

</div>

the bottom line of the engine is still console performance. amd gpus. you can throw a 5090 at a problem, but that tech is not gonna perform well on a ps5 (pro). technical fact. hmm.

---

<div class="post-metadata">

**Author:** ![motorsep](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/motorsep/32/918698_2.png) [@motorsep](https://forums.unrealengine.com/u/motorsep)\
**Post date:** [December 19, 2025, 9:47pm UTC](https://forums.unrealengine.com/t/epics-gpulightmass/139357/812 "2025-12-19T21:47:36Z")

</div>

If it works on i5, 16Gb RAM, 2060 GPU - I don’t care if it won’t work on consoles.

[Previous page](https://forums.unrealengine.com/t/epics-gpulightmass/139357.md?page=39)

[Next page](https://forums.unrealengine.com/t/epics-gpulightmass/139357.md?page=41)
