Frustum Culling

Frustum Culling can improves the performance of your game by disabling game objects completely when they're not in view (or distance) of the camera. Stop events, scripts, animations, sounds, basically all components on an object. It fully supports 3D (first & third person) as well as 2D and 2.5D games. This is not meant to be put on trees and other static objects which regular occlusion culling can take care of.



Documentation | Discord | Publisher Page



GET IN A BUNDLE

This asset is part of the Mega Tools Collection. Get 5 different assets while saving money.



WHY USE FRUSTUM CULLING?

CPU-heavy objects can hurt performance even when not needed. To fix this, disable them when out of view or distance, then re-enable when visible. For example, a puzzle script running constant checks doesn’t need to run off-screen. This can greatly boost framerate.



SUPPORTED VIEWS

Fully supports 3D (first & third person camera) as well as 2D including 2.5D camera view.



RENDERING PIPELINES

This package works on all rendering pipelines (Built-in, URP & HDRP) but the demos are made for Built-in and URP.



DYNAMIC OBJECTS

Frustum Culling works on dynamic game objects. Even those generated at runtime.



DISTANCE CULLING

You can also, optionally, disable game objects based on the distance of the camera, as well as the view.



HOW IS THIS DIFFERENT FROM UNITY'S SOLUTION?

Unity’s Occlusion Culling only disables mesh renderers, not entire objects. This tool fully disables game objects, giving greater performance gains. However, it’s best not to use it on the whole world.



DOCUMENTATION

The package comes with documentation and fully commented source code as well as a demo for Built-in and URP to help give you a running start.



Please leave us your thoughts and let us know what you think, we always appreciate any feedback.


For any questions, support or technical help, please contact me by email or Discord.