The current build (5.4.2, EDIT: And also 5.4.3) has a bug that causes the editor to crash, when very large, partitioned environments with many actors are loaded.
There are some threads on this forum that discuss the issue, like:
The bug is easily reproducible. Make a large, partitioned world and load plenty of stuff into the editor. After it surpasses an unknown limit, it crashes. Some devs assume that it’s foliage related, but I can’t necessarily confirm that.
As we’re affected by this bug and pretty much cannot go on working on our project for as long as this sticks, I reported a bug more than two weeks ago, following these instructions: https://www.unrealengine.com/en-US/support/report-a-bug
I instantly received an automatically generated mail with a case number, but that was it. The bug isn’t listed in the bug tracker and I haven’t heard anything back.
What am I (or people affected by this bug) supposed to do now? Does it make sense, to report it again? How long does it usually take until a bug is added to the bug tracker?
I think I’ve found a workaround that may be useful until it’s officially fixed.
From my understanding the crash occurs due to a limit being hit in the Nanite Scene Culling code, instead of each instance being culled individually the scene is parsed and grouped into cells so that less bounds checks need to be made. If more than 1048576 cells are created you get the crash.
Two ways you can avoid the crash are:
Disable Nanite scene culling by setting r.SceneCulling 0 this will likely reduce performance so profile this yourself but it let me open my level without crashing to work on it. You can set this in DefaultEngine.ini with:
[ConsoleVariables]
r.SceneCulling=0
Reduce the number of cells so they don’t hit the limit, I did this in my project by increasing the minimum cell size from the default of 4096cm to 16384cm with r.SceneCulling.MinCellSize, the command is read only so can’t be changed once the editor has launched. You can set this in DefaultEngine.ini with:
My level is large and mostly flying around at high altitudes so having less granular culling was pretty inconsequential for me.
You can use the command r.SceneCulling.DebugRenderMode 1 to view the cells and see how your meshes are being grouped and then increase or decrease r.SceneCulling.MinCellSize in the config restarting the editor each time until you find the best value that doesn’t crash and gives you enough culling granularity.
I can’t say “Thank you!!!” enough. This work-around finally allowed me to open our world map again. I wonder how anyone could hard-code a limit to the cells being used in an open world engine.