GeometryUtility.CalculateFrustumPlanes
Declaration
public static Plane[] CalculateFrustumPlanes(Camera camera);Параметры
| Параметр | Описание |
|---|---|
| камера | Камера с видом frustum, из которого вы хотите рассчитать плоскости. |
Возвращаемое значение
Plane[] Плоскости, которые формируют вид камеры frustum.
Описание
Вычисляет плоскости фрустума.
Эта функция берёт фрустум данной камеры и возвращает шесть плоскостей, которые его образуют. Нормальная каждой плоскости указывает на фрустум.
Порядок: [0] = Левый, [1] = Правый, [2] = Нижний, [3] = Верхний, [4] = Близкий, [5] = Далекий
Дополнительные ресурсы: Plane, 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); } } }
Declaration
public static void CalculateFrustumPlanes(Camera camera, Plane[] planes);Параметры
| Параметр | Описание |
|---|---|
| камера | Камера с видом frustum, из которого вы хотите рассчитать плоскости. |
| самолетов | Массив из 6 плоскостей, которые будут перезаписаны с вычисленными значениями плоскостей. |
Описание
Вычисляет плоскости фрустума.
Эта функция берёт заданный фрустум камеры и возвращает шесть плоскостей, которые его образуют. Это похоже на предыдущую перегрузку, за исключением того, что вместо выделения нового массива для рассчитанных плоскостей, функция будет использовать массив, который вы предоставили. Этот массив должен всегда иметь длину точно 6.
Порядок: [0] = Left, [1] = Right, [2] = Down, [3] = Up, [4] = Near, [5] = Far
Дополнительные ресурсы: Plane, GeometryUtility.TestPlanesAABB.
Declaration
public static Plane[] CalculateFrustumPlanes(Matrix4x4 worldToProjectionMatrix);Параметры
| Параметр | Описание |
|---|---|
| worldToProjectionMatrix | Матрица, которая преобразует мировое пространство в проекционное пространство, из которого будут рассчитываться плоскости. |
Возвращаемое значение
Plane[] Плоскости, окружающие проекционное пространство, описанное матрицей.
Описание
Вычисляет плоскости фрустума.
Эта функция возвращает шесть плоскостей фрустума, определенных заданным видом и матрицей проекции.
Дополнительные ресурсы: Plane, GeometryUtility.TestPlanesAABB.
Declaration
public static void CalculateFrustumPlanes(Matrix4x4 worldToProjectionMatrix, Plane[] planes);Параметры
| Параметр | Описание |
|---|---|
| worldToProjectionMatrix | Матрица, которая преобразует мировое пространство в проекционное пространство, из которого будут рассчитываться плоскости. |
| самолетов | Массив из 6 плоскостей, которые будут перезаписаны с вычисленными значениями плоскостей. |
Описание
Вычисляет плоскости фрустума.
Эта функция возвращает шесть плоскостей фрустума, определенных данной матрицей вида и проекции. Это похоже на предыдущую перегрузку, за исключением того, что вместо выделения нового массива для вычисленных плоскостей, функция будет использовать массив, который вы предоставили. Этот массив всегда должен иметь точно длину 6.
Дополнительные ресурсы: Plane, GeometryUtility.TestPlanesAABB.