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


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()!=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物体下



参考文章:

1.【Unity】【Camera】判断物体是否在视野范围内

2.

如何判断对象是否在摄像机的可视范围内

3.

Unity 如何判断物体是否在摄像机视野内或外

4.

5.










你可能感兴趣的:(Unity,Unity摄像机视角,Unity可视化辅助)