您的位置:首页 > 移动开发 > Unity3D

Unity3D中判断物体是否在摄像机视野中

2017-08-03 17:45 2056 查看
大概代码就这些:

public class Test : MonoBehaviour
{

public static bool bIsVisible = false;

//可见时 回调函数
void OnBecameVisible ()
{
bIsVisible = true;
Debug.Log ("我进来咯");
}

//不可见 回调函数
void OnBecameInvisible ()
{
bIsVisible = false;
Debug.Log ("我出去啦");
}
}


把脚本挂载到相应要判断的物体上,同时物体上必须要有渲染器组件(MeshRenderer ,LineRenderer等都可以),此时物体在进入/离开摄像机渲染范围的时候就会执行对应的回调函数,一进一出爽歪歪。

当然,你可能会发现就算我没进去,编译器也说我进去了,这是因为当该物体在场景中需要被渲染时,即使不在任何一个摄像机视野范围内也会被编译器认为可见。这在打包情况下不会出现啦。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: