www.pudn.com > 3D_Tank.rar > Camera.h
#ifndef __CAMERA_H__ #define __CAMERA_H__ #include#include "ComPtr.h" class CCamera { public: CCamera(); ~CCamera(); VOID Yaw(float fAngle); //偏航,绕着Y轴旋转 VOID Pitch(float fAngle); //俯仰,绕着X轴旋转 VOID Roll(float fAngle); //翻滚,绕着Z轴旋转 VOID Walk(float fLength); //行进,沿着look轴前进和后退 VOID Strafe(float fLength); //横行,沿着right轴左移和右移 VOID Fly(float fLength); //起降,沿着up轴上移和下移 VOID YawTo(float fAngle); VOID PitchTo(float fAngle); VOID RollTo(float fAngle); D3DXVECTOR3& GetPosition(); D3DXVECTOR3& GetLook(); VOID SetPosition(const D3DXVECTOR3 &position); VOID SetDirection(const D3DXVECTOR3 &look, const D3DXVECTOR3 &up, const D3DXVECTOR3 &right); VOID GetViewMarix(D3DXMATRIX *matView); private: D3DXVECTOR3 m_vPosition; D3DXVECTOR3 m_vLook; D3DXVECTOR3 m_vUp; D3DXVECTOR3 m_vRight; float m_fYaw; float m_fPitch; float m_fRoll; }; #endif //照相机类