如果边界位于该平面数组内,则返回 true。
如果包围盒位于这些平面内,或者与其中任何平面相交,则将返回 true。
TestPlanesAABB 函数使用 Plane 数组来测试包围盒是否位于该视椎体内。\
您可以将此函数与 CalculateFrustrumPlanes 结合使用来测试摄像机的视图是否包含对象
(无论其是否被渲染)。
另请参阅:GeometryUtility.CalculateFrustumPlanes。
using UnityEngine;
public class Example : MonoBehaviour { // Detects manually if obj is being seen by the main camera
GameObject obj; Collider objCollider;
Camera cam; Plane[] planes;
void Start() { cam = Camera.main; planes = GeometryUtility.CalculateFrustumPlanes(cam); objCollider = GetComponent<Collider>(); }
void Update() { if (GeometryUtility.TestPlanesAABB(planes, objCollider.bounds)) { Debug.Log(obj.name + " has been detected!"); } else { Debug.Log("Nothing has been detected"); } } }