GeometryUtility.CalculateFrustumPlanes 计算视景平面
static function CalculateFrustumPlanes (camera : Camera) : Plane[]
Description描述
Calculates frustum planes.
计算视景平面
This function takes given camera's view frustum and returns six planes that form it.
这个函数取得给定的摄像机的视景并返回它的六个面。
参见: Plane, GeometryUtility.TestPlanesAABB.
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
private Camera cam;
private Plane[] planes;
void Start() {
cam = Camera.main;
planes = GeometryUtility.CalculateFrustumPlanes(cam);
int i = 0;
while (i < planes.Length) {
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);
i++;
}
}
}
// Creates 6 planes that represent the camera frustrum.
//创建6个平面,代表摄像机视景体
private var cam : Camera;
private var planes : Plane[];
function Start() {
cam = Camera.main;
planes = GeometryUtility.CalculateFrustumPlanes(cam);
for(var i : int = 0; i < planes.Length; i++) {
var p : GameObject = 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);
}
}
• static function CalculateFrustumPlanes (worldToProjectionMatrix : Matrix4x4) : Plane[]
Description描述
Calculates frustum planes.
计算视景平面
This function returns six planes of a frustum defined by given view & projection matrix.
这个函数返回由给定的视窗和投影矩阵定义的视景的六个面。
参见:Plane, GeometryUtility.TestPlanesAABB.
最后修改:2011年1月5日 Wednesday 16:21