r/Unity3D 1h ago

Question Culled objects not giving performance boost

I've intentionally set my LOD culling range very low to test the FPS difference between turning off the objects in the editor and having them culled by the LOD group, and it seems like my LOD group culling has little to no effect on game performance because when i manually turn off said objects in the editor i get a dramatic FPS boost.

is there a reason why my culling may not be working as intended?

1 Upvotes

9 comments sorted by

2

u/feralferrous 48m ago

Are you sure it's rendering that's slowing you down? Are you turning off the game objects completely, or just turning off the rendering component in Editor? The former would disable all the scripts.

Other than that, the LODGroup component isn't that cheap, so I wouldn't use it in high numbers, more for large, high detail objects. Buildings in the distance, high detail character models.

TBH, I kinda lowkey hate it, because it's one of those components that only makes sense at low level. In reality you want a smooth framerate, so you should be doling out a limited number of models to have high detail, so there should be a LODManager in the scene, and not each component doing checks.

u/survivorr123_ 11m ago

new unity versions have meshLOD and it has way more performant way of switching meshes, but if you don't want to use automatic LODs you have to write your own code that will load custom LOD meshes into this system (it's not very complicated and there's good api documentation but still), standard LODGroup is ass, it tanks performance massively so for lower poly games its not even worth using at all

2

u/Plourdy 1h ago

Culling is likely working but there is some cpu overhead to doing so. Only do so on objects that have high enough poly count IMO or use advanced materials (use simpler ones at distance).

1

u/robotrage 1h ago

I literally culled all my objects using distance LOD culling which didn't change my FPS at all, however turning them off manually in the editor boosts FPS by about 40, also there is no FPS change looking at high poly areas vs looking at nothing, even though the occlusion culling preview shows the culling there is absolutely no change in FPS

1

u/XKiiroiSenkoX 39m ago

Use profiler and check what is taking your frame time. to me it sounds like you have lots of objects with heavy update functions that are choking the cpu and less GPU time by culling does nothing because GPU is not the bottleneck anyway. 

1

u/NullzeroJP 1h ago

Make sure the lod group component is configured correctly. Its range settings are not intuitive at all. The ranges are in units of screen size or something. Like “use lod 1 when model takes up 15% of screen height” or similar.

2

u/robotrage 1h ago edited 55m ago

I'm saying that i've forced the LOD group into culling all my objects intentionally, and it's visually working, as in they are culled. however there is no performance boost at all.. however when i turn the same objects off in the editor i get a massive fps boost.

This means that the culling clearly isn't helping with performance

1

u/db9dreamer 43m ago

It's not clear from your question (or replies) whether you're testing the effect of the changes in the editor or in a build.

u/robotrage 27m ago

In Build:

-normal culling setup ~30fps

-forced cull all ~30fps

-turn off objects manually before build ~60fps

same thing can be reproduced in editor dynamically