I have a 3D scene using an Isometric camera, 35 degrees from the ground and 45 degrees around the Y axis. The scene contains full 3D models of houses, when the player character walks into the house, I’d like to cull parts of the house, so that the player is not obscured by the walls, ceiling & roof.
I’ve made a picture that describes what I’m trying to achieve, this is not from my scene, just an arbitrary isometric image taken from a google search.
Faces r,s & t are to be invisible to the user as not to obscure the character.
From what I gather, I can use occlusion culling portals to occlude what is not visible outside of the room, but I don’t think this will occlude faces r,s & t.
A ray can be draw from the player along r,s & t and the mesh renderers with a particular layer can be disabled, however this isn’t entirely satisfactory as the faces r &s are made up of several different meshes and a single ray will miss these. Is it a case that I should use multiple rays to detect the objects to occlude?
one solution I can think of, but don’t know if possible would be if I could specify volumes extending along r,s & t, which disables mesh renderers that are contained within.
Is there a way that I can use Unity’s built in Occlusion culling to do this? How is this done in other games?