Nanashi-softプログラマ専用DirectX11開発


◇DirectX11プログラミング -ようやく3次元的な話に-

DirectXでポリゴンを描画する手順は,昔から決まっています
それは,DirectX11になっても変わりません(一見全然違うように見えますが……)
それを一番最初からやっていってみます

今表示したポリゴンの頂点座標は『ローカル座標』で指定されています
この座標は,要するに各自が勝手に決めたものです
三角形・四角形・五角形・六角形を同時に表示しようとした場合,これでは困ります

そこで,別に世界共通の座標を決めます。これを『ワールド座標』と呼びます
三角形を世界の中心に置いて,その右に四角形を置くよ。といった感じです
その時,ワールド座標に置き換えることを『ワールド変換』と呼びます

その世界にカメラを置きます
カメラのファインダーを覗いた時,それが正面なのか,右横なのかによって見え方がかわりますよね?
その構図にするのを『ビュー変換』と呼びます

で,ここが変な話なのですが,実はそのカメラから見た映像は遠近感がありません
全てが同じサイズに見えるそうです(謎
このわけわからないのを,普通に遠近感のある画像にするのを『透視射影変換』と呼びます

最後に,ディスプレイのサイズに切り取ることを『ビューポート(切り取り)』と呼びます

これらの工程を経て,画面に3D描画されます
だそうですよ(*'-') ←理解する気が無い


手順をまとめると,こうなります
・ローカル座標
 ↓ワールド変換
・ワールド座標
 ↓ビュー変換
・カメラから見た座標
 ↓透視変換(透視射影変換)
・遠近感のある座標
 ↓ビューポート(切り取り)
・描画

これがわかっていないと,何をすればよいのかがわからなくなります(実話)


TOPプログラマ専用DirectX11開発

Melonbooks DL