- Home /
Find out if GameObject is in Field of View
I try to calculate if a GameObject is in Field of View of my Camera.
Edit: Becouse if not i want to disable the MeshRenderer of the GameObject.
Is there a buld in function i didnt find till now? Right now im using this code snippet which looks to work right. But im not sure.
Vector3 cameraRelative = _camTransform.InverseTransformPoint(gO.transform.position); Vector3 screenPos = _cam.WorldToScreenPoint(gO.transform.position);
if (screenPos.x > 0 && screenPos.x < Screen.width && screenPos.y > 0 && screenPos.y < Screen.height && cameraRelative.z > 0) // The object is in front of the camera _inView = true; else // The object is behind the camera _inView = false;
Answer by Mike 3 · Jun 29, 2010 at 11:05 AM
You can just use this:
bool visible = renderer.isVisible
I cheered to fast. I have a little problem. After i disable the rendere. I, not able to Enable it again, because after that renderer.isVisible is always false.
Why do you need to disable the renderer if it's out of view again? it's not being rendered
Ahhh! If the renderer is not vissible it will not be rendered at all? So i can use isVisible only for my calculations? I testet it and it look that it works in this way!
Nice
if(AI_$$anonymous$$an_$$anonymous$$esh.renderer.isVisible){ Debug.Log("I can see a you mr AI man!!"); }
Handy!
Answer by spinaljack · Jun 29, 2010 at 10:41 AM
There's an option to stop animations if the object is not in view
http://unity3d.com/support/documentation/ScriptReference/Animation-animateOnlyIfVisible.html
Sorry I sayd the wrong thing. I dont use the Animation Class from Unity, ins$$anonymous$$d i using the iTween library. Also i want to disable the $$anonymous$$eshRenderer on the GameObjects not in view.
Your answer
Follow this Question
Related Questions
Negative results when converting HFOV to VFOV? 1 Answer
Automatically adjust cameras FOV to maintain a perfect 360 coverage with multiple cameras 0 Answers
Is there a way to set the horizontal field of view of a camera? 3 Answers
How to animate zooming in of the camera? 4 Answers
Change field of view over time 1 Answer