- 408 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 11:04:16 ]
- // カメラの初期姿勢(視点(0,0,-10)、注視点(0,0,0)の場合)(変更しないで保持する)
const D3DXVECTOR4 vecEyePt(0,0,-10,1) ; const D3DXVECTOR4 vecLookatPt(0,0,0,1) ; const D3DXVECTOR4 vecUpVec(0,1,0,0) ;//ここだけw成分が0であることに注意(回転のみ反映) // 初期姿勢からどれくらい移動したいかの行列 // 回転だけでなく拡大縮小移動なども合成できる D3DXMatrixRotationY(&mat, g_CameraAngle.y); D3DXVECTOR4 Eye, Look, Up D3DXVec4Transform ( &Eye, &vecEyePt, &mat ) ; D3DXVec4Transform ( &Look,&vecLookatPt, &mat ) ; D3DXVec4Transform ( &Up, &vecUpVec, &mat ) ; D3DXMatrixLookAtLH(&matView, (D3DXVECTOR3*)&Eye, (D3DXVECTOR3*)&Look, (D3DXVECTOR3*)&Up); もうちょっとスマートなやり方あるけどそれは少し考えればわかるよね
|

|