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

identity恒等行列を返します。 (Read Only)
zeroすべての要素をゼロに設定した行列を返します。 (Read Only)

Variables

determinant行列の行列式。
inverseこの行列の逆行列。 (Read Only)
isIdentityこれは恒等行列ですか。
this[int,int][行, 列] でのアクセス要素。
transposeこの行列の転置行列を返します。 (Read Only)

Public Functions

GetColumn行列の列を取得します。
GetRow行列の行を返す。
MultiplyPointこの行列で位置を変換します (一般)。
MultiplyPoint3x4この行列で位置を変換します (高速)。
MultiplyVectorこの行列によって方向を変換します。
SetColumn行列の列を設定します。
SetRow行列の行を設定します。
SetTRSこの行列を移動、回転やスケーリングする行列に設定します。
ToStringこの行列できれいに書式設定された文字列を返します。

Static Functions

Ortho直交射影行列を作成します。
Perspective透視投影行列を作成します。
Scaleスケーリングする行列を作成します。
TRS移動、回転やスケーリングする行列を作成します。

Operators

operator *ふたつの行列を乗算します。