Does anyone know the best method for culling an entire object, renderer and scripts included based on it’s distance from the player/camera?
Right now I’m making a 2d platformer with 3d graphics, but what I want is for all the objects off screen to not play scripts or render. My Current method is attaching something like this to each object:
var closeDistance = 50.0;
var sqrLen = (b.transform.position - transform.position).sqrMagnitude;
if( sqrLen < closeDistance*closeDistance )
{
if(!renderer.enabled)
{
renderer.enabled = true;
enabled = true;
}
}
else
{
if(renderer.enabled)
{
renderer.enabled = false;
enabled = false;
}
}
I want to disable everything since there is no AI that has to be calculated. I feel like there HAS to be a better way to manage this then to have every object call this every tenth of a second.
One method I’m thinking of doing is attaching a collider/trigger area onto the camera the disables of enables everything inside or outside of it. Any method that people know works really well?
Thanks!