ども、こんにちわ~
眠いけどがんばっているZAKIです。
もっと別のとこがんばりゃいいのにね
さて、今回のテーマは
「カメラって行列なんだよね」です。
今回のは講座というよりは、小話ですw
既に知ってる人は、暖かい目でZAKIの成長を見といてください
ちなみに、
2年生向けの記事です。
[0回]
さて、最近DirectXのカメラの操作をやっていて、めんどくさいと思ったんです
だって、自機を見下げながら追いかけるカメラとか、ベクトルの角度計算したりめんどくさいじゃないですか
それで、思ったんです。
「カメラ行列って普通の行列の逆行列だったなぁ」と。
やってみました。
D3DXMATRIX mTrans;
D3DXMATRIX mRot;
D3DXMATRIX mCamera;
D3DXMatrixRotationX(&mRot,D3DXToRadian(10));
//10度下を向く
D3DXMatrixTranslation(&mTrans,0,0,-10.0f);
//10後ろに下がる
mCamera = mRot * mTrans * mJiki;
//自機についていく
D3DXMatirxInverse(&mCamera,NULL,&mCamera);
//逆行列にしてセット
pD3DDevice->SetTransform(D3DTS_VIEW,&mCamera);
あ、できた
おお、何か発見しちゃった
ある一点を見つめ続けるにはやりづらい方法ですが
、「大体この辺りが見えればいい」見たいなカメラなら使いやすそうです
知ってる人には今更な方法ですが、
知らない人には結構、便利なもんなんじゃないかなぁと思います
今回はこの辺りで。
あでゅー
ノシ
PR
COMMENT