- Home /
using OnBecameVisible or IsVisible with occlusion culling in Unity Pro
Hi, so I'm making a game where I need to know what objects are visible at certain times to the player, and frustum culling wasn't sufficient (I'd tried combining that with distance from the player and wasn't getting good results). So I thought that would be a good reason to upgrade to Pro! Now I'm using Occlusion Culling and judging from the Scene view it's working beautifully. The only thing is that objects that are obviously occluded in the scene view, meaning that the visualization shows them as invisible, still give off positive IsVisible and OnBecameVisible while they are inside of the camera's viewing area.
Isn't there any way to use code to find out if an object is being occluded or not? I would think that IsVisible would be the way.
Answer by aroOon · Jan 25, 2014 at 11:53 PM
Oh wow, apparently things that are occluded are still "rendered" for shadows? I turned off my shadows and looks like OnBecameVisible is giving me correct answers now. There must be a setting I haven't found yet that turns off shadows for occluded objects so I can still keep my shadows on for the things that are seen... hopefully...
Answer by aroOon · Jan 25, 2014 at 11:53 PM
It looks like so far the best bet is to limit shadow distance, but then that sounds like the same trick I used before with calculating player distance from the object, and doesn't take into account whether or not something is blocking the view or not. I guess my problem is that I'm trying to use something that's mainly for performance as a game mechanic. It still seems like there ought to be a way to know what is being drawn onscreen and what is not if you're using occlusion culling, regardless of whether it casts a shadow or not. Any ideas?
Your answer
Follow this Question
Related Questions
Occlusion Culling 1 Answer
Occlusion Area Not working.. 0 Answers
Dynamic moving occluder? 0 Answers
Occlusion Culling disables my point lights. 4 Answers
Occlusion culling doesn't works. 1 Answer