オブジェクトの頂点をモデル座標系からワールド座標系に移すときに法線も一緒に変換する必要がある。 たとえば、シェーディングするときは法線が必要になるが、たいていライトはワールド座標系に存在しているため、法線もワールド座標系に移す必要がある。 他にも、法線をいろいろ利用するときは頂点と同じ座標系にあった方が都合が良い。 頂点について、モデル座標系からワールド座標系に移すときには何らかの変換行列を使って変換する。 しかし、頂点に対して作用する行列と同じものを法線に対して作用させてもうまくいかない。 まず、平行移動成分を除去しなければならない。法線は向きのみの量なので平行移動は関係ないからである。 回転移動成分についてはそのまま使うことが出来る。 拡大縮小などのスケーリング成分については、たとえば各頂点をX軸方向に3倍にする場合、法線はX軸方向に1/3倍にする必要がある。(最終的に正規化して長さは
ホーム < ゲームつくろー! < DirectX技術編 < 知っていると便利?ワールド変換行列から情報を抜き出そう その39 知っていると便利?ワールド変換行列から情報を抜き出そう 今回はちょっと息抜きです。ワールド変換行列(座標変換行列)は3Dゲームで多分一番よく使う行列だと思います。この行列は回転、スケール、オフセットの3要素から作成します。では、すでに作成されたワールド変換行列からそれらの要素は抜き出す事ができるのでしょうか?またワールド変換行列には具体的にどのような情報が詰め込まれているのでしょうか?この章では、そのようなワールド変換行列から抜き出す事ができる情報について整理してみます。 ① ワールド変換行列の作り方 今更なのですが、ワールド変換行列の基本についてまとめておきます。ワールド変換行列は回転、スケール、オフセットの3要素を表す行列の掛け算で作成するのが一般的です。各行列
【リンク】 ◆解説系TOP◆ 今日は、2次元と3次元の座標の相互変換についてのお話です。 ※別の次元(2←―→3)へ座標を変換する方法を紹介します。 別に、自分がアニメの世界に入り込んだり、アニメのキャラクターが現実の世界に出てくる、 という様な意味ではありませぬ。 では、まずコレをご覧下さい。 【参考画像】 メタセコイアです。 メタセコイアでは、普通にカーソルでモデルの表面を選択する事が出来るんですが、 (写ってないですが、黄色くなっている部分がカーソルで指されています) よく考えたら、謎ですね。 x軸とy軸しかないウィンドウ(2次元の世界)から、 x、y、z軸の3次元の世界を選択できています。 一体どうやっているのか? 今日は、この謎の部分を解説します。 (まぁ、先に結論を言ってしまうと、行列で2次元と3次元の座標を変換してます。) では、下記の様な順で書いていこうかな、と。 ----
入力 E (eye):カメラ (視点) 位置 (カメラ座標系の原点でなくてもよい.) C (center):注視点 up:カメラの上方向を指定するベクトル カメラに対して前後に傾いていてもよいが,視線と平行であってはならない. OpenGL や DirectX のソースコードで up ベクトルをワールド座標系の真上方向 (0, 1, 0) に固定しているものをたまに見かけるが, これだとカメラを真上や真下に向けたときに何も見えなくなってしまう. (up と f が平行になるので,ビュー変換行列が定義できない.) OE (origin of eye):カメラ座標系の原点 P:任意の点 出力 カメラ座標系の正規直交基底 f (forward):カメラ前方向 (視線方向) の単位ベクトル u (up):カメラ真上方向の単位ベクトル r (right):カメラ右方向の単位ベクトル その他 (中間結
解説 ここからが3Dの本番となります。 今回は3Dの中で一番基本であり、数ええられないくらいの 3D 初心者を消してきた「座標変換」について説明します。 今までの中で間違いなく強敵で、数学もどんどん出てきます。 それでも 3D ゲームを作るに当たってこの行列変換は必ず必要になってきます。 気合を入れましょう。 ↑ 座標変換って何? そもそも座標変換とは何なのでしょうか? 座標については知ってますよね。 変換といえば、文字を変えていくあの変換ですよね。 座標変換とは文字通り「座標を変えていきます。」 3Dの座標変換は数式で演算することもできますが、通常は行列を用いて変換していきます。 さて、ここでプリミティブのことを思い出してください。 ポリゴンを形成するプリミティブは全て頂点から形成されています。 ということは頂点を操作すれば図形が変わるということです。 そこで、この性質を用いてこの頂点に
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く