Epic's GPUlightmass

I have tested right now in 5.3 and 5.4 and it seems to be broken in 5.3 (just to confirm I’m not wrong), but working as expected in 5.4. We just need to wait, or to compile 5.4 from code.

Do you have links to 5.4 bugfix commits, so it can be backported to 5.3 ?

No, sorry… I just compiled the 5.4 some days ago and just tested it now.

Perhaps those can be taken from here: https://github.com/EpicGames/UnrealEngine/commits/ue5-main/Engine/Plugins/Experimental/GPULightmass
I don’t see any recent commits related to material saving/applying :confused:

It may just be something they broke in 5.3 without knowing, and not in 5.4 :sweat_smile:

Insert meme: “It’s been 84 years”.

It’s been broken since 5.2 released. Clearly GPULM must not be tested before engine versions are released, so what guarantees do we have that it would be fixed in 5.4? At this point this is significantly affecting the release of at least one of our products, and realistically it’ll be another 5-6 months before 5.4 is released and all plugins our project depends on are updated for it.

1 Like

what if you disable virtual texture lightmaps?

Just tested, no change. Behaves exactly the same as virtual textures enabled.

Yep. 0 guarantee.

In fact, my general advice is to not use UE5 as production, but UE4 when possible, and only use UE5 if you absolutely need one of its exclusive new features. It’s a pitty, but an unconfortable reality.

@Arkiras @Ozykz I wanted to chime in here and say thank you both for the information above! We’ve identified the problem you discussed and the issue should be resolved with the Git submit here.

I will add a small note since I’ve seen it discussed in the thread previously; GPULM is still active so please stay patient, we’re working as hard as we can :slight_smile: We try to be as transparent as we can be and appreciate the community in finding issues! We’ll keep monitoring the thread for additional issues.

9 Likes

I appreciate the response and the update.
I will try and build 5.3 from source and integrate the fixes into that.

1 Like

So important to have you here! Keeping you informed, and keeping us updated.

I hope it’s finally becoming true.

Thank you very much.

2 Likes

Of course, no worries! We appreciate hearing that :slight_smile:

Like I mentioned, we’ll continue to monitor the threads, community bugs, and do our best to keep transparency in our actions.

7 Likes

I’m getting some crashing in 5.3.1 when switching GPULM to “non realtime” mode. This only seems to happen in certain levels. I haven’t been able to isolate the reason why.

I first noticed this problem after building from source. However, I am having the same issue in the stock launcher version of 5.3.1

Below is the error code from that.

LoginId:608005f64bf25940b944428ed3a3687d
EpicAccountId:737accaa1fba4fa1b31a0f211b85d9c6

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]

Anyone else having a similar issue?
I have the best luck, clearly :upside_down_face:

1 Like

Regarding my last message.

We’ve managed to test the crash on half a dozen different systems. I can confirm it is definitely not just my setup.

I’m not certain as to the cause. It is something in the scene, or perhaps just a function of the size of the scene. I would have to spend more time trying to reproduce it in a new project.

In the meantime, if it would be helpfuI to reproduce the issue, I would be more than happy to share a scene from our project that has this issue, either via DMs here on the forum or on discord via my username: Ozykz

UPDATE:

I am almost certain that the above crash is related to Ultra Dynamic Sky.
I have made the maker of that plugin aware of the issue, so we’ll see where that goes.

1 Like

I appreciate the investigation here but just to clarify, the crash does not occur if that plugin is disabled correct?

Correct. Without that plugin, we are now fully operational (with a source build that has the fixes backported from 5.4)

3 Likes

If anyone doesn’t want to go through the hassle of building their own copy of 5.3 from source with the 5.4 fixes for GPULM, I compiled a binary installed build, which is a 10GB download and 25GB on disk.

I’d be happy to share the link with anyone that needs it.

2 Likes

Perfect.

On the plus side, we actually identified another issue from your crash details :slight_smile: Again, we appreciate all the information you’ve provided us!

5 Likes