Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Matrix4x4

структура в UnityEngine / Реализовано в: UnityEngine.CoreModule

Описание

Стандартная матрица преобразования 4 x 4.

Матрица преобразования может выполнять произвольные линейные трехмерные преобразования (т. е. перемещение, вращение, масштабирование, сдвиг и т. д.) и преобразования перспективы с использованием однородных координат. Вы редко используете матрицы в сценариях; чаще всего используются Vector3, Quaternion и функциональность класса Transform. проще. Обычные матрицы используются в особых случаях, например при настройке нестандартной проекции камеры.

В Unity несколько Transform, Camera, Material, Graphics и GL используют Matrix4x4.

Матрицы в Unity имеют основной столбец; то есть позиция матрицы преобразования находится в последнем столбце, а первые три столбца содержат оси x, y и z. Доступ к данным осуществляется следующим образом: строка + (столбец*4). Матрицы могут быть индексируются как двумерные массивы, но обратите внимание, что в таком выражении, как mat[a, b], a относится к индексу строки, а b относится к индексу столбца.

using UnityEngine;

public class ExampleScript : MonoBehaviour { void Start() { // get matrix from the Transform var matrix = transform.localToWorldMatrix; // get position from the last column var position = new Vector3(matrix[0,3], matrix[1,3], matrix[2,3]); Debug.Log("Transform position from matrix is: " + position); } }

Статические Свойства

identity Возвращает единичную матрицу (только для чтения).
zero Возвращает матрицу, в которой все элементы равны нулю (только для чтения).

Свойства

decomposeProjection Это свойство принимает матрицу проекции и возвращает шесть координат плоскости, которые определяют усеченную проекцию.
determinant Определитель матрицы. (Только чтение)
inverse Инверсия этой матрицы. (Только чтение)
isIdentity Проверяет, является ли это единичной матрицей. (Только чтение)
lossyScale Попытка получить значение шкалы из матрицы. (Только чтение)
rotation Попытка получить кватернион вращения из этой матрицы.
this[int,int] Доступ к элементу в [строка, столбец].
transpose Возвращает транспонирование этой матрицы (только для чтения).

Публичные Методы

GetColumn Получает столбец матрицы.
GetRow Возвращает строку матрицы.
MultiplyPoint Преобразует позицию по этой матрице (общая).
MultiplyPoint3x4 Преобразует позицию по этой матрице (быстро).
MultiplyVector Преобразует направление по этой матрице.
SetColumn Задает столбец матрицы.
SetRow Задает строку матрицы.
SetTRS Задает для этой матрицы матрицу перемещения, поворота и масштабирования.
ToString Возвращает форматированную строку для этой матрицы.
TransformPlane Возвращает трансформируемую в пространстве плоскость.
ValidTRS Проверяет, является ли эта матрица допустимой матрицей преобразования.

Статические Методы

Frustum Эта функция возвращает матрицу проекции с усеченной видимостью, у которой есть ближняя плоскость, определяемая переданными координатами.
Inverse3DAffine Вычисляет обратную трехмерную аффинную матрицу.
LookAt Создаёт матрицу просмотра.
Ortho Создаёт матрицу ортогональной проекции.
Perspective Создаёт матрицу перспективной проекции.
Rotate Создаёт матрицу вращения.
Scale Создаёт матрицу масштабирования.
Translate Создаёт матрицу перевода.
TRS Создаёт матрицу перемещения, поворота и масштабирования.

Операторы

operator * Умножает две матрицы.
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3