OnBecameVisible和OnBecameInvisible,isVisible。
判断 物体 在Scene视图和Game视图下的 所有的摄像机的可视范围内。
isVisible的用法,挂载的物体必须要有Renderer组件
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CameraCube : MonoBehaviour { public GameObject[] go_array; // Update is called once per frame void Update () { updateArray(); } void updateArray() { for (int i=0; i<go_array.Length ;i++) { if (go_array[i] !=null && go_array[i].GetComponent<MeshRenderer>()!=null) { Debug.Log(go_array[i].name+" isVisible:" + go_array[i].GetComponent<MeshRenderer>().isVisible); } } } }OnBecameVisible和OnBecameInvisible的用法:
using System.Collections; using System.Collections.Generic; using UnityEngine; public class VisibleOrInvisible : MonoBehaviour { private void OnBecameVisible() { //print("摄像机视野内"); Debug.Log("摄像机视野内"); } private void OnBecameInvisible() { //print("在摄像机视野外"); Debug.Log("摄像机视野外"); } }把VisibleOrInvisible挂载到 3DCube物体下
参考文章:
1.【Unity】【Camera】判断物体是否在视野范围内
2.
3.
4.
5.
