- DXライブラリ 総合スレッド その8
337 :名前は開発中のものです。[sage]:2011/05/16(月) 21:28:02.34 ID:oqSb1uU0 - >>334
まだ見てるか分からないけど 中心を左にずらすってことは、カメラを右に平行移動したい という解釈であってる? であれば float fov = D3DX_PI / 4.0f; float height = 480.0f; //描画する矩形の高さ float X = 100.0f; //これがカメラの移動量 D3DXVECTOR3 vEyePt = D3DXVECTOR3( X, 0.0f, (height / -2.0f) / tan(fov / 2.0f) ); //カメラの位置 D3DXVECTOR3 vLookatPt = D3DXVECTOR3( X, 0.0f, 0.0f ); //カメラが映している位置 D3DXVECTOR3 vUpVec( 0.0f, 1.0f, 0.0f ); D3DXMATRIX matView; D3DXMatrixLookAtLH( &matView, &vEyePt, &vLookatPt, &vUpVec ); //またはD3DXMatrixLookAtRH() LPD3D9Divece->SetTransform( D3DTS_VIEW, &matView ); これで左にずれてレンダリングされるはず カメラを平行移動させる時は注視点を連動させる
|