/* ========================================================================== * ÀÛ ¼º ÀÚ : À̼ø±Ô * ÀÛ ¼º ÀÏ : 2007.02.08 * ³» ¿ë : ½ÃÁ¡ °íÁ¤ Ä«¸Þ¶ó Ŭ·¡½º * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "Camera.h" /// ½ÃÁ¡ °íÁ¤ Ä«¸Þ¶ó class cLookAtCamera : public cCamera { public: cLookAtCamera(); virtual ~cLookAtCamera(); /// ½ÃÁ¡ void SetLookAt( const NiPoint3& target ); void SetLookAt( float x, float y, float z ); const NiPoint3& GetLookAt() const; void SetLookAtDistance( float dist ); float GetLookAtDistance() const; float GetDesiredLookAtDistance() const; /// °»½Å ¿©ºÎ bool GetNeedUpdate() const; protected: /// ó¸® virtual void Process( unsigned long deltaTime ); virtual void ProcessInput( unsigned long deltaTime ); protected: /// ½ÃÁ¡°ú Ä«¸Þ¶ó »çÀÌÀÇ °Å¸® float mDesiredLookAtDistance; float mLookAtDistance; /// ½ÃÁ¡ NiPoint3 mTargetLookAt; NiPoint3 mLookAt; /// ȸÀü float mTargetYawAngle; float mTargetPitchAngle; float mYawAngle; float mPitchAngle; /// °»½Å ¿©ºÎ bool mNeedUpdate; }; inline void cLookAtCamera::SetLookAt( const NiPoint3& target ) { mTargetLookAt = target; } inline void cLookAtCamera::SetLookAt( float x, float y, float z ) { mTargetLookAt.x = x; mTargetLookAt.y = y; mTargetLookAt.z = z; } inline const NiPoint3& cLookAtCamera::GetLookAt() const { return mLookAt; } inline void cLookAtCamera::SetLookAtDistance( float dist ) { mLookAtDistance = dist; } inline float cLookAtCamera::GetLookAtDistance() const { return mLookAtDistance; } inline float cLookAtCamera::GetDesiredLookAtDistance() const { return mDesiredLookAtDistance; } inline bool cLookAtCamera::GetNeedUpdate() const { return mNeedUpdate; }