Renderer disabled = Any good?

There are a few questions I have been having since ever:

If a gameobject, dunno, a cube, is not visible in the screen (the player is facing somewhere else), is the renderer active at all? Basically, in that case, the renderer is not enabled, or is it?

Is there a difference having 3000 objects, non visible because I am facing somewhere else, and all having their renderers disabled, or having 3000 objects (not visible too) but with their renderer component enabled?


What is the most consuming activity a common gameobject (lets say, a sphere) might be doing? Can it be disabled to save performance?

Unity automatically uses frustum culling, which means that if an object is behind the camera or simply out of the camera's view, it's not rendered. So turning off all the renderers of the objects doesn't do anything if they're not in the view anyway.

The most consuming activity for a GameObject would probably be calculating its lighting and shadows if there are any. If it's a common object, the gameobject on itself doesn't do much to the performance. However, if you have a giant object with a lot of vertices and triangles it gets harder to render it and your framerate will go down.

If you want to increase the performance you might also want to check out your camera settings and, if there are any, light settings.

If you have Unity Pro you could apply occlusion culling to your cameras, this will make sure the camera doesn't render objects that are behind other ones. The standard frustum culling only culls the objects outside of the cameraview, everything inside the view is rendered, even if it's behind another object and actually not visible.

Another thing that could drain alot of performance is the use of particle systems. But that depends on the amount of particles they emit.