Nanite render problem

Hey, thanks! It’s definitely related to Land Grass Type. I set grass.densityScale to 0 and Movie Render Queue works without crushing now.

2 Likes

Same issue here, and works with disabling the grass with the console command from above. It’s strange because we use the same landscape material in two different scenes - one renders fine, the other crashes when starting the render.

I haven’t the slightest clue why no body figured this out…I was looking for a solution and couldn’t find one so I started searching the CVars and here you go

Nanite On:
r.Nanite 1

Nanite Off:
r.Nanite 0

Still happens in 5.2 :frowning:

Done some testing and tried stuff like world partitioning without success, so far a decent workaround for me was just thinning out excessive amounts of grass which works. You can also thin out further and increase the XY(Z) scale values of your grass since the problem seems to be related to the amount of grass meshes. On that note I think just making groups of grass clumps in your 3d program of choice that contain multiple grass blades positioned together and combined in a big mesh would also work, haven’t tested it though.

Keep getting this NumSceneInstancesPo2 <= (1 << 24) Nanitecullraster crash, the problem is caused by having too many grass instances on my map (its a 4x4km map), the grass itself is not nanite enabled, it just happens when the editor tries to load a large amount of grass.

Hopefully this will be fixed soon or some type of decent workaround suggested because it’s a major drawback. Using foliage obviously isn’t a solution because adding millions of grass will consume all memory, obliterate performance and balloon your map size to multiple gigs.

1 Like

Similar error for me, certainly related to Nanite grass:

Assertion failed: NumSceneInstancesPo2 <= (1 << 24) [File:D:\build++UE5\Sync\Engine\Source\Runtime\Renderer\Private\Nanite\NaniteCullRaster.cpp] [Line: 1841]

Also, bizarrely, I got a different error with traditional grass related to virtual shadow maps:

Assertion failed: Size > 0 [File:D:\build++UE5\Sync\Engine\Source\Runtime\D3D12RHI\Private\D3D12Buffer.cpp] [Line: 301] Attempt to create buffer ‘Shadow.Virtual.VisibleInstances’ with size 0.

What’s annoying is that this amount of grass works in-viewport, but not when I render through the movie queue. This is quite ruining my project, I can’t quite believe 5.2.1 isn’t ready for primetime yet - doesn’t anyone else feel they spend more time troubleshooting than doing actual work? :confused:

1 Like

This may be simply because we are hitting the hard limit of 16.777.216 visible Nanite clusters. You can maybe get around this by lowering the grass.DensityScale a bit. For me going from default 1 to 0.9 actually made the bug test sequence render wihtout a crash, but you might have to lower it more depending on how close to the limit you are.

Same problem ,maybe because i use nanite foliage,or landing grass type,many grass trigger crash. hope ue official fix this bug.

lowering the grass.DensityScale will reduce grass density,then zhe scene is very ugly

look up source code,find because max nanite instance > pow(2,24) = 16777216,so reduce your nanite mesh may solve this problem

i just started having this problem in 5.4.3 after i started messing with the DefaultEngine.ini

sometimes it starts up a certain level without crashing… and sometimes it crashes… i cant figure out why. Sometimes randomly disabling 1 thing in the ini has it working after 3 attemps… and on other computers that disabled thing didnt help at all… got 5 computers all running into this problem in the same scene… some can open it without crashing… others cant. Its really weird.