Calculates frustum planes.
// Creates 6 planes that represent the camera frustum. 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); } }
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++; } } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): private cam as Camera private planes as (Plane) def Start() as void: cam = Camera.main planes = GeometryUtility.CalculateFrustumPlanes(cam) i as int = 0 while i < planes.Length: p as 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) i++
Calculates frustum planes.