Hi, I’m building a game but when I freeze rendering behind an object all objects that should be occlusion culled are not, they all have the culling enabled but they are not culling, and I have introduced a distance volume too but those objects just do not disappear (the map is composed of separate static meshes, all planes, so I feel like they should disappear)
To test whether this is due to nanite, you can use the console command r.nanite 0 to disable nanite globally. If that solves the issue, then it was due to the meshes using nanite.
You can check which meshes use nanite, under Viewmode → Nanite Visualization → triangles (for example), if you then see the triangles not not just a black screen then those meshes use nanite. Otherwise you can also open up a mesh and under Nanite Settings → Enable Nanite Support (that is also how you can enable/disable nanite on a mesh). And at least in UE5.4 you can enable/disable nanite for several meshes at once from the content browser by right clicking the selection → Nanite → Checking/Unchecking Nanite
Nanite meshes use a new alternative mesh rendering system introduced with UE5. Nanite can handle very high poly counts (like millions of polys on a single mesh with thousands of them in your scene). If you only use low poly assets (like thousands of polys on an asset instead of millions) then there would be no need to use it.
If you plan on having billions of triangles in your scene, then you need nanite to run it, on low poly assets as far as I seen and tested it nanite performs worse compared to the old system as of UE5.4 (but on RTX 2000 upwards series you should have no problem hitting 60FPS while using everything nanite, so the performance downgrade should not be a problem unless you target low end systems or need extremely high framerates).
Nanite has a rather high upfront cost, so if you don’t want to use it, make sure to disable it globally (r.nanite 0 or disable nanite support in the settings). Also make sure to not use virtual shadow maps (default shadowing system introduced with UE5), as that requires everything to be nanite to run performant.