Version: 5.4 (switch to 5.5b)
言語English
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Matrix4x4

struct in UnityEngine

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

マニュアルに切り替える

Description

標準 4x4 変換行列

変換行列は同次座標系を使用して任意の線形 3D 変換 (平行移動、回転、スケール、シア(剪断)等) や 透視変換を実行できます。スクリプトで行列を使用します。 Vector3QuaternionTransform クラスの機能を使用することでほとんどの場合はもっと簡単です。 非標準のカメラ投影の設定のような特別な場合に単純な行列が使用されます。

変換行列の詳細な説明は CG の教科書を参照してください。

Unity では Matrix4x4 は TransformCameraMaterialGL 関数などで使用されます。

Unity の行列は列が重要です。データは 行 + (列 * 4) としてアクセスされます。行列は 2次元配列と同様にインデックスできます。 mat[a,b] のような式で a は行インデックスを参照し、b は 列インデックスを参照します(これはデカルト座標と反対の方法であることに注意してください)。

Static Variables

identityReturns the identity matrix (Read Only).
zeroReturns a matrix with all elements set to zero (Read Only).

Variables

determinantThe determinant of the matrix.
inverseThe inverse of this matrix (Read Only).
isIdentityIs this the identity matrix?
this[int,int]Access element at [row, column].
transposeReturns the transpose of this matrix (Read Only).

Public Functions

GetColumn行列の列を取得します。
GetRow行列の行を返す。
MultiplyPointこの行列で位置を変換します (一般)。
MultiplyPoint3x4この行列で位置を変換します (高速)。
MultiplyVectorこの行列によって方向を変換します。
SetColumn行列の列を設定します。
SetRow行列の行を設定します。
SetTRSこの行列を移動、回転やスケーリングする行列に設定します。
ToStringReturns a nicely formatted string for this matrix.

Static Functions

OrthoCreates an orthogonal projection matrix.
PerspectiveCreates a perspective projection matrix.
Scaleスケーリングする行列を作成します。
TRS移動、回転やスケーリングする行列を作成します。

Operators

operator *Multiplies two matrices.