判断物体是否在摄像机的可视范围视野范围内

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         {
            if (go_array[i] !=null && go_array[i].GetComponent()!=null)
            {
 
                Debug.Log(go_array[i].name+"     isVisible:" + go_array[i].GetComponent().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物体下

你可能感兴趣的:(unity3d)