camera | 带视图视锥的摄像机(计算平面会从此摄像机开始)。 |
Plane[] 形成摄像机视图视锥的平面。
计算视锥平面。
此函数获取给定摄像机的视图视锥并返回形成该视锥的六个平面。
排序: [0] = 左,[1] = 右,[2] = 下,[3] = 上,[4] = 近,[5] = 远
其他资源: 平面,GeometryUtility.TestPlanesAABB。
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { void Start() { // Calculate the planes from the main camera's view frustum Plane[] planes = GeometryUtility.CalculateFrustumPlanes(Camera.main);
// Create a "Plane" GameObject aligned to each of the calculated planes for (int i = 0; i < 6; ++i) { GameObject p = GameObject.CreatePrimitive(PrimitiveType.Plane); p.name = "Plane " + i.ToString(); p.transform.position = -planes[i].normal * planes[i].distance; p.transform.rotation = Quaternion.FromToRotation(Vector3.up, planes[i].normal); } } }
camera | 带视图视锥的摄像机(计算平面会从此摄像机开始)。 |
planes | 6 个平面的数组,将使用计算出的平面值覆盖这些平面。 |
计算视锥平面。
此函数获取给定摄像机的视图视锥并返回形成该视锥的六个平面。这与前面的重载类似,但该函数不会为计算出的平面分配一个新数组,而是会使用您提供的数组。此数组的长度始终必须恰好为 6。
排序: [0] = 左,[1] = 右,[2] = 下,[3] = 上,[4] = 近,[5] = 远
其他资源: 平面,GeometryUtility.TestPlanesAABB。
worldToProjectionMatrix | 从世界空间变换到投影空间的矩阵,平面就是从该矩阵中计算出的。 |
Plane[] 包含矩阵描述的投影空间的平面。
计算视锥平面。
此函数返回由给定的视图和投影矩阵定义的视锥的六个平面。
其他资源: 平面,GeometryUtility.TestPlanesAABB。
worldToProjectionMatrix | 从世界空间变换到投影空间的矩阵,平面就是从该矩阵中计算出的。 |
planes | 6 个平面的数组,将使用计算出的平面值覆盖这些平面。 |
计算视锥平面。
此函数返回由给定的视图 & 投影矩阵定义的视锥的六个面。这与之前的重载类似,不同之处在于函数不会为计算出的面分配新数组,而是将使用您提供的数组。 此数组的长度必须始终恰好为 6。
其他资源: 平面,GeometryUtility.TestPlanesAABB。