Embree crashes in lightmapping/distance field and lumen card generation

Hi,

running VLM only lightmapping on 5.6 has suddenly started crashing in Embree code. I have disabled Embree for lightmapping to get around the issue for now but we have started hitting similar crashes during Lumen Card and Distance Field generation.

Example callstack:

GameEditor-Core.dll!ReportAssert() []
GameEditor-Core.dll!FWindowsErrorOutputDevice::Serialize() []
GameEditor-Core.dll!FOutputDevice::LogfImpl() []
GameEditor-Core.dll!AssertFailedImplV() []
GameEditor-Core.dll!FDebug::CheckVerifyFailedImpl2V() []
GameEditor-Core.dll!FDebug::CheckVerifyFailedImpl2() []
GameEditor-MeshUtilities.dll!EmbreeFilterFunc() []
embree4.dll!UnknownFunction []
embree4.dll!UnknownFunction []
GameEditor-MeshUtilities.dll!FSparseMeshDistanceFieldAsyncTask::DoWork() []
GameEditor-MeshUtilities.dll!`ParallelForImpl::ParallelForInternal<`BuildSignedDistanceField'::`20'::<lambda_1>,`ParallelForTemplate<`BuildSignedDistanceField'::`20'::<lambda_1> >'::`2'::<lambda_1>,std::nullptr_t>'::`2'::FParallelExecutor::operator()() []
GameEditor-MeshUtilities.dll!LowLevelTasks::TTaskDelegate<LowLevelTasks::FTask * __cdecl(bool),48>::TTaskDelegateImpl<`LowLevelTasks::FTask::Init<`ParallelForImpl::ParallelForInternal<`BuildSignedDistanceField'::`20'::<lambda_1>,`ParallelForTemplate<`BuildSignedDistanceField'::`20'::<lambda_1> >'::`2'::<lambda_1>,std::nullptr_t>'::`2'::FParallelExecutor>'::`13'::<lambda_1>,0>::CallAndMove() []
GameEditor-Core.dll!LowLevelTasks::FTask::ExecuteTask() []
GameEditor-Core.dll!LowLevelTasks::FScheduler::ExecuteTask() []
GameEditor-Core.dll!LowLevelTasks::FScheduler::WorkerLoop() []
GameEditor-Core.dll!`LowLevelTasks::FScheduler::CreateWorker'::`2'::<lambda_1>::operator()() []
GameEditor-Core.dll!FThreadImpl::Run() []
GameEditor-Core.dll!FRunnableThreadWin::Run() []
GameEditor-Core.dll!FRunnableThreadWin::GuardedRun() []

The above error looks like it stems from FEmbreeTriangleDesc Desc = GeometryAsset->TriangleDescs[RTCHitN_primID(args->hit, 1, 0)];

We’ve also had it hit this assert in Embree.cpp during lightmapping here:

rtcCommitScene(EmbreeScene);

check(rtcGetDeviceError(EmbreeDevice) == RTC_ERROR_NONE);

This seems to be a general issue with using Embree 4 as we’ve never seen these issues before. Any assistance much appreciated as this is causing a lot of editor stability issues.

Thanks,

Lee

Steps to Reproduce

Hi,

launching the lightmapper from the menu in one of our World Partition levels.

We don’t have a 100% repro for the distance field or lumen card cases but a lot of people using the editor here are affected

Hello,

Thank you for reaching out.

I’ve been assigned this issue, and we will be looking into this crash for you.

Hello,

Are you using baked lightmaps, or dynamic illumination with Lumen?

Can you please attach a test project that shows the issue, or if that is not possible, a project that has the same rendering settings as your project with the existing issue?

Along with the test project, can you please provide more detailed reproduction steps?

The guide for test projects:

[Content removed]

Thank you.

We’re using baked lightmaps (volumetric only). I haven’t had any time to create a test project yet but just building volumetric lightmaps seem to cause the crash

Hello,

We have been unable to get a crash baking Volumetric Lightmaps only in a World Partition level after several attempts.

When you have time to create a test project, that should help us reproduce the crash you are seeing.

You mention a lot of people using the editor are affected. Is there a common CPU or configuration that differentiates the workstations that are experiencing the crash from those that are not?