Rendering beyond solid surface

Hi,

I am using the events OnBecameVisible and OnBecameInvisible to check out some camera rendering functionalities.

But it came as a suprize when i saw the OnBecameInvisible event NOT firing on objects which were actually hidden totally in game view for the camera!!

For example, i wrote those events on some trees (planes) and even after hiding behind a building wall there was no OnBecameInvisible event fired on them, i.e., they were rendered by camera!

Whereas, that event got naturally fired on trees outside of camera frustum (this is understandable).


Is it just because i was facing towards those trees though hiding behind a wall?

Does it depend on the shader used for the wall?

I actually can’t remember if Unity has some occlusion culling and how that works… but otherwise it sounds fine to me: as long as objects are in the frustum they are rendered and only graphics card know that the pixels of the tree are behind the house, but Unity doesn’t know that.