「ワールド座標変換」の版間の差分

提供:MonoBook
imported>Administrator
ページの作成:「'''ワールド座標変換'''とは、3Dモデルなどをワールド座標に配置することをいう。 3Dモデルの持つ各頂点の座標はロ...」
 
編集の要約なし
 
(同じ利用者による、間の3版が非表示)
1行目: 1行目:
'''ワールド座標変換'''とは、[[3Dモデル]]などを[[ワールド座標]]に配置することをいう。
'''ワールド座標変換'''とは、[[3Dモデル]]などをモデル空間(デザイン時の座標)からワールド空間(全体の3Dシーンが存在する空間、[[ワールド座標]])に変換することをいいます。


3Dモデルの持つ各[[頂点]]の座標はローカル座標と呼ばれる。
「モデル座標変換」「モデル変換」などと呼ばれることもあります。いわゆる方言であり意味は同じです。
 
== 概要 ==
3Dモデルの持つ各[[頂点]]の座標は[[ローカル座標]]と呼ばれる。
いわゆる[[3DCAD]]などで作図したときの座標である。
いわゆる[[3DCAD]]などで作図したときの座標である。
これを[[ゲーム]]のシーンなどの「ワールド」に配置することをいう。
これを[[ゲーム]]のシーンなどの「ワールド」に配置する処理をいう。
 
== 処理 ==
ワールド座標変換で行われる操作は基本的には「拡縮」「回転」「移動」の3つの[[変換行列]]である。
* [[拡大縮小行列]](scale)
* [[回転行列]](rotation)
* [[平行移動行列]](transform)
 
上記の順番で行列の乗算を行うと[[ワールドマトリックス]]が得られる。
float4x4 world = scale * rotation * transform;
 
'''この操作は「順序」が重要で、処理の順序を変えると残念な結果になる'''。以下はダメな例である。算数の教科書にはこの処理を指して「TRS」などと書かれているため逆順だと勘違いすることが多い。
float4x4 world = transform * rotation * scale;


== 関連項目 ==
== 関連項目 ==
12行目: 27行目:


[[category: 3DCG]]
[[category: 3DCG]]
[[category: 行列]]

2023年12月21日 (木) 02:18時点における最新版

ワールド座標変換とは、3Dモデルなどをモデル空間(デザイン時の座標)からワールド空間(全体の3Dシーンが存在する空間、ワールド座標)に変換することをいいます。

「モデル座標変換」「モデル変換」などと呼ばれることもあります。いわゆる方言であり意味は同じです。

概要[編集 | ソースを編集]

3Dモデルの持つ各頂点の座標はローカル座標と呼ばれる。 いわゆる3DCADなどで作図したときの座標である。 これをゲームのシーンなどの「ワールド」に配置する処理をいう。

処理[編集 | ソースを編集]

ワールド座標変換で行われる操作は基本的には「拡縮」「回転」「移動」の3つの変換行列である。

上記の順番で行列の乗算を行うとワールドマトリックスが得られる。

float4x4 world = scale * rotation * transform;

この操作は「順序」が重要で、処理の順序を変えると残念な結果になる。以下はダメな例である。算数の教科書にはこの処理を指して「TRS」などと書かれているため逆順だと勘違いすることが多い。

float4x4 world = transform * rotation * scale;

関連項目[編集 | ソースを編集]