オブジェクトの位置と方向の両方を格納する 4x4 行列を表します。
注: Matrix4x4 オブジェクトは一時的です。このオブジェクトは、生成されたフレーム内でのみ使用することができます。複数のフレームにわたって Matrix4x4 を保存する必要がある場合は、Matrix4x4Box を代わりに使用します。詳細については、「オブジェクトのライフタイムとユーザデータのバインド」を参照してください。
コンストラクタとアクセサ
関連サンプル コード
その他の関連リファレンス項目
![]() |
axis ( m, i ) : stingray.Vector3![]() 行列のローカル X 軸、Y 軸、または Z 軸を取得します。
|
m : | 軸を返す行列です。 | |
i : | integer | 取得する軸のインデックスです。X 軸を取得するには 1、Y 軸は 2、Z 軸は 3 を使用します。 |
指定したインデックスにある軸です。 |
![]() |
copy ( m ) : stingray.Matrix4x4![]() 同じ回転値と移動値を持つ指定した行列の新しいコピーを返します。
|
![]() |
element ( m, i, j ) : number![]() 行列内のインデックス (i, j) の要素を返します。
|
m : | 要素が返される行列です。 | |
i : | integer | 行のインデックス。ローカル X 軸の回転にアクセスするには 1、 ローカル Y 軸の回転には 2、ローカル Z 軸の回転には 3、移動には 4 を使用します。 |
j : | integer | 列のインデックス。グローバル X コンポーネントにアクセスするには 1、グローバル Y コンポーネントには 2、グローバル Z コンポーネントには 3、移動には 4 を使用します。 |
number |
指定したインデックスを持つ要素の値です。 |
インデックスは 1 ベースであるため、たとえば、element(1,2) は行列に格納されている X 軸(1)の Y コンポーネント(2)を返します。
![]() |
equal ( m1, m2 ) : boolean![]() 2 つの行列が等しいかどうかを示します。
|
m1 : | 最初の行列です。 | |
m2 : | 2 番目の行列です。 |
boolean |
2 つの行列が同じである場合は true を返し、それ以外の場合は false を返します。 |
![]() |
forward ( m ) : stingray.Vector3![]() 指定された行列の前方(Y)軸を返します。
|
![]() |
from_axes ( x, y, z, t ) : stingray.Matrix4x4![]() 指定した回転と移動を表す行列を返します。
|
x : | ローカル X 軸の方向です。 | |
y : | ローカル Y 軸の方向です。 | |
z : | ローカル Z 軸の方向です。 | |
t : | 新しい行列に格納される移動です。 |
新しく作成されたマトリックス。 |
関連サンプル コード
![]() |
from_elements ( xx, xy, xz, yx, yy, yz, zx, zy, zz, tx, ty, tz ) : stingray.Matrix4x4![]() X 軸 (xx, xy, xz)、Y 軸 (yx, yy, yz)、Z 軸 (zx, zy, zz)、移動 (tx, ty, tz) を使用したマトリックスを作成します。
|
xx : | number | グローバル X 軸に沿ったローカル X 軸の大きさ。 |
xy : | number | グローバル Y 軸に沿ったローカル X 軸の大きさ。 |
xz : | number | グローバル Z 軸に沿ったローカル X 軸の大きさ。 |
yx : | number | グローバル X 軸に沿ったローカル Y 軸の大きさ。 |
yy : | number | グローバル Y 軸に沿ったローカル Y 軸の大きさ。 |
yz : | number | グローバル Z 軸に沿ったローカル Y 軸の大きさ。 |
zx : | number | グローバル X 軸に沿ったローカル Z 軸の大きさ。 |
zy : | number | グローバル Y 軸に沿ったローカル Z 軸の大きさ。 |
zz : | number | グローバル Z 軸に沿ったローカル Z 軸の大きさ。 |
tx : | number | グローバル X 軸に沿った移動。 |
ty : | number | グローバル Y 軸に沿った移動。 |
tz : | number | グローバル Z 軸に沿った移動。 |
新しく作成されたマトリックス。 |
Matrix4x4() に相当します。
![]() |
from_quaternion ( q ) : stingray.Matrix4x4![]() 指定した回転を移動なしで表す行列を返します。
|
![]() |
from_quaternion_position ( q, t ) : stingray.Matrix4x4![]() 指定した回転と移動を表す行列を返します。
|
q : | 新しい行列に格納される回転です。 | |
t : | 新しい行列に格納される移動です。 |
新しく作成されたマトリックス。 |
関連サンプル コード
![]() |
from_translation ( t ) : stingray.Matrix4x4![]() 指定した移動を回転なしで表す行列を返します。
|
![]() |
identity ( ) : stingray.Matrix4x4![]() 移動と回転なしのオブジェクトを表す単位行列を返します。
|
この関数はパラメータを受け入れません。 |
単位行列です。 |
関連サンプル コード
![]() | 基本テンプレート: /main_menu.lua キャラクタ テンプレート: /main_menu.lua 車両テンプレート: /main_menu.lua Oculus VR テンプレート: /main_menu.lua Oculus VR テンプレート: /project.lua Steam VR テンプレート: /project.lua |
その他の関連リファレンス項目
![]() |
inverse ( m ) : stingray.Matrix4x4![]() 指定した行列の逆を返します。
|
![]() |
is_valid ( m ) : boolean![]() 行列が有効な値だけで構成されているかどうかを示します。
|
m : | 検証する行列です。 |
boolean |
行列のすべてのコンポーネントが有効な数値の場合は true を返し、いずれかのコンポーネントが #NaN または #INF·の場合は false を返します。 |
![]() |
is_valid_for_physics ( m ) : boolean![]() 行列を物理オブジェクトに適用できるかどうかを示します。
|
m : | 検証する行列です。 |
boolean |
この行列が物理オブジェクトに適用できる場合は true を返し、それ以外の場合は false を返します。 |
たとえば、行列にシア(非直交軸)または他の予期しないジオメトリが含まれている場合、行列が物理オブジェクトでの使用に適合しない場合があります。
![]() |
lerp ( m1, m2, t ) : stingray.Matrix4x4![]() 2 つの指定した行列間で補間、すなわち「線形補間」を行うことで新しい行列を生成します。
|
m1 : | 最初の行列です。 | |
m2 : | 2 番目の行列です。 | |
t : | number | 2 つの行列の間の比率、または補間ポイントです。0 から 1 までの任意の値にすることができます。値が 0 に近いほど、m1 に近い行列が生成され、1 に近いほど m2 に近い行列が生成されます。 |
結果の行列です。 |
これは移動と回転を別々に線形補間することで行われます。スケールなどは線形補間されません。
![]() |
multiply ( m1, m2 ) : stingray.Matrix4x4![]() 2 つの行列を乗算します。
|
m1 : | 乗算する最初の行列です。 | |
m2 : | 乗算する 2 番目の行列です。 |
乗算の結果です。 |
これは個別のトランスフォーム行列のコンポジット トランスフォームを作成します。
![]() |
right ( m ) : stingray.Vector3![]() 指定した行列の右(X)軸を返します。
|
![]() |
rotation ( m ) : stingray.Quaternion![]() 行列の回転を取得します。
|
m : | 回転が返される行列です。 |
行列の回転です。 |
関連サンプル コード
![]() |
scale ( m ) : stingray.Vector3![]() 行列のスケールを取得します。
|
m : | スケールが返される行列です。 |
行列のスケールです。 |
関連サンプル コード
![]() |
set_axis ( m, i, v )![]() 行列のローカル X 軸、Y 軸、または Z 軸を設定します。
|
m : | 軸が設定される行列です。 | |
i : | integer | 設定する軸のインデックスです。X 軸を取得するには 1、Y 軸は 2、Z 軸は 3 を使用します。 |
v : | 設定する軸の値 |
この関数は値を返しません。 |
![]() |
set_element ( m, i, j, value )![]() 行列内のインデックス (i, j) の要素に新しい値を設定します。
|
m : | 要素が設定される行列です。 | |
i : | integer | 行のインデックス。ローカル X 軸の回転を設定するには 1、ローカル Y 軸の回転は 2、ローカル Z 軸の回転は 3、移動は 4 を使用します。 |
j : | integer | 列のインデックス。グローバル X コンポーネントを設定するには 1、グローバル Y コンポーネントは 2、グローバル Z コンポーネントは 3、移動は 4 を使用します。 |
value : | number | 指定されたインデックスを持つ要素に設定する値です。 |
この関数は値を返しません。 |
インデックスは 1 ベースであるため、たとえば、set_element(1,2) は行列に格納されている X 軸(1)の Y コンポーネント(2)を設定します。
![]() |
set_forward ( m, forward )![]() 指定された行列の前方(Y)軸を設定します。
|
![]() |
set_right ( m, right )![]() 指定した行列の右(X)軸を設定します。
|
![]() |
set_rotation ( m, r )![]() 行列の回転を設定します。
|
![]() |
set_scale ( m, s )![]() 行列のスケールを設定します。
|
m : | スケールが設定される行列です。 | |
s : | 行列の新しいスケールです。 |
この関数は値を返しません。 |
関連サンプル コード
![]() |
set_translation ( m, t )![]() 行列の移動を設定します。
|
m : | 移動が設定される行列です。 | |
t : | 行列の新しい移動です。 |
この関数は値を返しません。 |
関連サンプル コード
![]() |
set_up ( m, up )![]() 指定した行列の上(Z)軸を設定します。
|
![]() |
set_x ( m, x )![]() 指定した行列の X 軸を設定します。
|
![]() |
set_y ( m, y )![]() 指定した行列の Y 軸を設定します。
|
![]() |
set_z ( m, z )![]() 指定した行列の Z 軸を設定します。
|
![]() |
to_elements ( m ) : number, number, number, number, number, number, number, number, number, number, number, number![]() Matrix4x4 をその X、Y、Z 軸の方向とその移動に分解します。
|
m : | 要素に分解する行列です。 |
number |
グローバル X 軸に沿ったローカル X 軸の大きさ。 |
number |
グローバル Y 軸に沿ったローカル X 軸の大きさ。 |
number |
グローバル Z 軸に沿ったローカル X 軸の大きさ。 |
number |
グローバル X 軸に沿ったローカル Y 軸の大きさ。 |
number |
グローバル Y 軸に沿ったローカル Y 軸の大きさ。 |
number |
グローバル Z 軸に沿ったローカル Y 軸の大きさ。 |
number |
グローバル X 軸に沿ったローカル Z 軸の大きさ。 |
number |
グローバル Y 軸に沿ったローカル Z 軸の大きさ。 |
number |
グローバル Z 軸に沿ったローカル Z 軸の大きさ。 |
number |
グローバル X 軸に沿った移動。 |
number |
グローバル Y 軸に沿った移動。 |
number |
グローバル Z 軸に沿った移動。 |
![]() |
to_string ( m ) : string![]() 指定した行列の文字列表現を返します。
|
![]() |
transform ( m, p ) : stingray.Vector3![]() 指定した行列を使用して指定したポイントをトランスフォームします。
|
m : | トランスフォームに使用する行列です。 | |
p : | トランスフォームされる位置です。 |
行列によってトランスフォームされた後の新しい位置です。 |
関連サンプル コード
![]() |
transform_without_translation ( m, v ) : stingray.Vector3![]() 指定した行列を使用して、ベクトルを移動せずに指定したベクトルをトランスフォームします。
|
m : | トランスフォームに使用する行列です。 | |
v : | トランスフォームされるベクトルです。 |
行列によってトランスフォームされた後の新しい位置です。 |
この関数は、2 つの異なる座標系間で方向(位置ではなく)を移動する場合に便利です。
![]() |
translation ( m ) : stingray.Vector3![]() 行列の移動を取得します。
|
m : | 移動が返される行列です。 |
行列の移動です。 |
関連サンプル コード
![]() |
up ( m ) : stingray.Vector3![]() 指定した行列の上(Z)軸を返します。
|
![]() |
x ( m ) : stingray.Vector3![]() 指定した行列の X 軸を返します。
|
![]() |
y ( m ) : stingray.Vector3![]() 指定した行列の Y 軸を返します。
|
![]() |
z ( m ) : stingray.Vector3![]() 指定した行列の Z 軸を返します。
|
![]() |
zero ( ) : stingray.Matrix4x4![]() すべてのフィールドが 0 (ゼロ)に初期化されたゼロ行列を返します。
|