raSystem  1.0 bata
raCamera Class Referenceabstract

#include <raCamera.h>

Inheritance diagram for raCamera:
raCameraFP raOrthoCamera raColCamera

Public Member Functions

 raCamera ()
 
virtual long OnKeyDown (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnKeyUp (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnRMouseUp (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnRMouseDown (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnLMouseUp (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnLMouseDown (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnMMouseUp (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnMMouseDown (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnCaptureChange (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual long OnMouseWheel (HWND wnd, WPARAM wParam, LPARAM lParam)
 
virtual void FrameMove (float fTime, float FPS)=0
 
virtual void Reset ()
 
virtual void SetViewParams (raVector3 *pvEyePt, raVector3 *pvLookatPt)
 
virtual void SetProjParams (float fFOV, float fAspect, float fNearPlane, float fFarPlane)
 
virtual void SetOrthoCamera (raVector2 *pvWindowSize, float fNearPlane, float fFarPlane)
 
virtual void SetDragRect (RECT &rc)
 
void SetInvertPitch (bool bInvertPitch)
 
void SetDrag (bool bMovementDrag, FLOAT fTotalDragTimeToZero=0.25f)
 
void SetEnableYAxisMovement (bool bEnableYAxisMovement)
 
void SetEnablePositionMovement (bool bEnablePositionMovement)
 
void SetClipToBoundary (bool bClipToBoundary, D3DXVECTOR3 *pvMinBoundary, raVector3 *pvMaxBoundary)
 
void SetScalers (FLOAT fRotationScaler=0.01f, FLOAT fMoveScaler=5.0f)
 
void SetNumberOfFramesToSmoothMouseData (int nFrames)
 
void SetResetCursorAfterMove (bool bResetCursorAfterMove)
 
virtual const raMatrix GetViewMatrix ()
 
virtual const raMatrix GetProjMatrix ()
 
virtual const raMatrix GetOrthoMatrix ()
 
virtual raVector3GetEyePt ()
 
virtual raVector3GetLookAtPt ()
 
virtual float GetNearClip ()
 
virtual float GetFarClip ()
 
virtual raMatrixGetWorldMatrix ()
 
virtual raVector3GetWorldRight ()
 
virtual raVector3GetWorldUp ()
 
virtual raVector3GetWorldAhead ()
 
raVector3GetVelocity ()
 
bool IsBeingDragged ()
 
bool IsMouseLButtonDown ()
 
bool IsMouseMButtonDown ()
 
bool IsMouseRButtonDown ()
 

Protected Member Functions

virtual D3DUtil_CameraKeys MapKey (UINT nKey)
 
bool IsKeyDown (BYTE key) const
 
bool WasKeyDown (BYTE key) const
 
void ConstrainToBoundary (raVector3 *pV)
 
void UpdateMouseDelta ()
 
void UpdateVelocity (float fElapsedTime)
 
void GetInput (bool bGetKeyboardInput, bool bGetMouseInput, bool bGetGamepadInput, bool bResetCursorAfterMove)
 

Protected Attributes

raMatrix m_mView
 
raMatrix m_mCameraWorld
 
raMatrix m_mProj
 
raMatrix m_mOrtho
 
raVector3 m_vGamePadLeftThumb
 
raVector3 m_vGamePadRightThumb
 
double m_GamePadLastActive [4]
 
int m_cKeysDown
 
BYTE m_aKeys [CAM_MAX_KEYS]
 
raVector3 m_vKeyboardDirection
 
POINT m_ptLastMousePosition
 
bool m_bMouseLButtonDown
 
bool m_bMouseMButtonDown
 
bool m_bMouseRButtonDown
 
int m_nCurrentButtonMask
 
int m_nMouseWheelDelta
 
raVector2 m_vMouseDelta
 
float m_fFramesToSmoothMouseData
 
raVector3 m_vDefaultEye
 
raVector3 m_vDefaultLookAt
 
raVector3 m_vEye
 
raVector3 m_vLookAt
 
float m_fCameraYawAngle
 
float m_fCameraPitchAngle
 
RECT m_rcDrag
 
raVector3 m_vVelocity
 
bool m_bMovementDrag
 
raVector3 m_vVelocityDrag
 
FLOAT m_fDragTimer
 
FLOAT m_fTotalDragTimeToZero
 
raVector2 m_vRotVelocity
 
float m_fFOV
 
float m_fAspect
 
float m_fNearPlane
 
float m_fFarPlane
 
float m_fRotationScaler
 
float m_fMoveScaler
 
bool m_bInvertPitch
 
bool m_bEnablePositionMovement
 
bool m_bEnableYAxisMovement
 
bool m_bClipToBoundary
 
raVector3 m_vMinBoundary
 
raVector3 m_vMaxBoundary
 
bool m_bResetCursorAfterMove
 
HWND m_hwnd
 

Detailed Description

Definition at line 35 of file raCamera.h.

Constructor & Destructor Documentation

◆ raCamera()

raCamera::raCamera ( )

Definition at line 15 of file racamera.cpp.

Member Function Documentation

◆ ConstrainToBoundary()

void raCamera::ConstrainToBoundary ( raVector3 pV)
protected

Definition at line 369 of file racamera.cpp.

◆ FrameMove()

virtual void raCamera::FrameMove ( float  fTime,
float  FPS 
)
pure virtual

Implemented in raColCamera, raCameraFP, and raOrthoCamera.

◆ GetEyePt()

virtual raVector3* raCamera::GetEyePt ( )
inlinevirtual

Reimplemented in raCameraFP.

Definition at line 116 of file raCamera.h.

◆ GetFarClip()

virtual float raCamera::GetFarClip ( )
inlinevirtual

Definition at line 128 of file raCamera.h.

◆ GetInput()

void raCamera::GetInput ( bool  bGetKeyboardInput,
bool  bGetMouseInput,
bool  bGetGamepadInput,
bool  bResetCursorAfterMove 
)
protected

Definition at line 236 of file racamera.cpp.

◆ GetLookAtPt()

virtual raVector3* raCamera::GetLookAtPt ( )
inlinevirtual

Definition at line 120 of file raCamera.h.

◆ GetNearClip()

virtual float raCamera::GetNearClip ( )
inlinevirtual

Definition at line 124 of file raCamera.h.

◆ GetOrthoMatrix()

virtual const raMatrix raCamera::GetOrthoMatrix ( )
inlinevirtual

Definition at line 112 of file raCamera.h.

◆ GetProjMatrix()

virtual const raMatrix raCamera::GetProjMatrix ( )
inlinevirtual

Definition at line 108 of file raCamera.h.

◆ GetVelocity()

raVector3* raCamera::GetVelocity ( )
inline

Definition at line 150 of file raCamera.h.

◆ GetViewMatrix()

virtual const raMatrix raCamera::GetViewMatrix ( )
inlinevirtual

Definition at line 104 of file raCamera.h.

◆ GetWorldAhead()

virtual raVector3* raCamera::GetWorldAhead ( )
inlinevirtual

Definition at line 146 of file raCamera.h.

◆ GetWorldMatrix()

virtual raMatrix* raCamera::GetWorldMatrix ( )
inlinevirtual

Definition at line 133 of file raCamera.h.

◆ GetWorldRight()

virtual raVector3* raCamera::GetWorldRight ( )
inlinevirtual

Definition at line 138 of file raCamera.h.

◆ GetWorldUp()

virtual raVector3* raCamera::GetWorldUp ( )
inlinevirtual

Definition at line 142 of file raCamera.h.

◆ IsBeingDragged()

bool raCamera::IsBeingDragged ( )
inline

Definition at line 155 of file raCamera.h.

◆ IsKeyDown()

bool raCamera::IsKeyDown ( BYTE  key) const
inlineprotected

Definition at line 175 of file raCamera.h.

◆ IsMouseLButtonDown()

bool raCamera::IsMouseLButtonDown ( )
inline

Definition at line 159 of file raCamera.h.

◆ IsMouseMButtonDown()

bool raCamera::IsMouseMButtonDown ( )
inline

Definition at line 163 of file raCamera.h.

◆ IsMouseRButtonDown()

bool raCamera::IsMouseRButtonDown ( )
inline

Definition at line 167 of file raCamera.h.

◆ MapKey()

D3DUtil_CameraKeys raCamera::MapKey ( UINT  nKey)
protectedvirtual

Definition at line 384 of file racamera.cpp.

◆ OnCaptureChange()

long raCamera::OnCaptureChange ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 208 of file racamera.cpp.

◆ OnKeyDown()

long raCamera::OnKeyDown ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 110 of file racamera.cpp.

◆ OnKeyUp()

long raCamera::OnKeyUp ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 126 of file racamera.cpp.

◆ OnLMouseDown()

long raCamera::OnLMouseDown ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 174 of file racamera.cpp.

◆ OnLMouseUp()

long raCamera::OnLMouseUp ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 162 of file racamera.cpp.

◆ OnMMouseDown()

long raCamera::OnMMouseDown ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 196 of file racamera.cpp.

◆ OnMMouseUp()

long raCamera::OnMMouseUp ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 185 of file racamera.cpp.

◆ OnMouseWheel()

long raCamera::OnMouseWheel ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 227 of file racamera.cpp.

◆ OnRMouseDown()

long raCamera::OnRMouseDown ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 150 of file racamera.cpp.

◆ OnRMouseUp()

long raCamera::OnRMouseUp ( HWND  wnd,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Definition at line 138 of file racamera.cpp.

◆ Reset()

VOID raCamera::Reset ( )
virtual

Definition at line 441 of file racamera.cpp.

◆ SetClipToBoundary()

void raCamera::SetClipToBoundary ( bool  bClipToBoundary,
D3DXVECTOR3 *  pvMinBoundary,
raVector3 pvMaxBoundary 
)
inline

Definition at line 84 of file raCamera.h.

◆ SetDrag()

void raCamera::SetDrag ( bool  bMovementDrag,
FLOAT  fTotalDragTimeToZero = 0.25f 
)
inline

Definition at line 72 of file raCamera.h.

◆ SetDragRect()

virtual void raCamera::SetDragRect ( RECT &  rc)
inlinevirtual

Definition at line 64 of file raCamera.h.

◆ SetEnablePositionMovement()

void raCamera::SetEnablePositionMovement ( bool  bEnablePositionMovement)
inline

Definition at line 80 of file raCamera.h.

◆ SetEnableYAxisMovement()

void raCamera::SetEnableYAxisMovement ( bool  bEnableYAxisMovement)
inline

Definition at line 76 of file raCamera.h.

◆ SetInvertPitch()

void raCamera::SetInvertPitch ( bool  bInvertPitch)
inline

Definition at line 68 of file raCamera.h.

◆ SetNumberOfFramesToSmoothMouseData()

void raCamera::SetNumberOfFramesToSmoothMouseData ( int  nFrames)
inline

Definition at line 94 of file raCamera.h.

◆ SetOrthoCamera()

void raCamera::SetOrthoCamera ( raVector2 pvWindowSize,
float  fNearPlane,
float  fFarPlane 
)
virtual

Definition at line 106 of file racamera.cpp.

◆ SetProjParams()

VOID raCamera::SetProjParams ( float  fFOV,
float  fAspect,
float  fNearPlane,
float  fFarPlane 
)
virtual

Definition at line 96 of file racamera.cpp.

◆ SetResetCursorAfterMove()

void raCamera::SetResetCursorAfterMove ( bool  bResetCursorAfterMove)
inline

Definition at line 98 of file raCamera.h.

◆ SetScalers()

void raCamera::SetScalers ( FLOAT  fRotationScaler = 0.01f,
FLOAT  fMoveScaler = 5.0f 
)
inline

Definition at line 90 of file raCamera.h.

◆ SetViewParams()

VOID raCamera::SetViewParams ( raVector3 pvEyePt,
raVector3 pvLookatPt 
)
virtual

Reimplemented in raOrthoCamera.

Definition at line 68 of file racamera.cpp.

◆ UpdateMouseDelta()

void raCamera::UpdateMouseDelta ( )
protected

Definition at line 269 of file racamera.cpp.

◆ UpdateVelocity()

void raCamera::UpdateVelocity ( float  fElapsedTime)
protected

Definition at line 316 of file racamera.cpp.

◆ WasKeyDown()

bool raCamera::WasKeyDown ( BYTE  key) const
inlineprotected

Definition at line 179 of file raCamera.h.

Member Data Documentation

◆ m_aKeys

BYTE raCamera::m_aKeys[CAM_MAX_KEYS]
protected

Definition at line 200 of file raCamera.h.

◆ m_bClipToBoundary

bool raCamera::m_bClipToBoundary
protected

Definition at line 238 of file raCamera.h.

◆ m_bEnablePositionMovement

bool raCamera::m_bEnablePositionMovement
protected

Definition at line 235 of file raCamera.h.

◆ m_bEnableYAxisMovement

bool raCamera::m_bEnableYAxisMovement
protected

Definition at line 236 of file raCamera.h.

◆ m_bInvertPitch

bool raCamera::m_bInvertPitch
protected

Definition at line 234 of file raCamera.h.

◆ m_bMouseLButtonDown

bool raCamera::m_bMouseLButtonDown
protected

Definition at line 203 of file raCamera.h.

◆ m_bMouseMButtonDown

bool raCamera::m_bMouseMButtonDown
protected

Definition at line 204 of file raCamera.h.

◆ m_bMouseRButtonDown

bool raCamera::m_bMouseRButtonDown
protected

Definition at line 205 of file raCamera.h.

◆ m_bMovementDrag

bool raCamera::m_bMovementDrag
protected

Definition at line 220 of file raCamera.h.

◆ m_bResetCursorAfterMove

bool raCamera::m_bResetCursorAfterMove
protected

Definition at line 242 of file raCamera.h.

◆ m_cKeysDown

int raCamera::m_cKeysDown
protected

Definition at line 199 of file raCamera.h.

◆ m_fAspect

float raCamera::m_fAspect
protected

Definition at line 227 of file raCamera.h.

◆ m_fCameraPitchAngle

float raCamera::m_fCameraPitchAngle
protected

Definition at line 216 of file raCamera.h.

◆ m_fCameraYawAngle

float raCamera::m_fCameraYawAngle
protected

Definition at line 215 of file raCamera.h.

◆ m_fDragTimer

FLOAT raCamera::m_fDragTimer
protected

Definition at line 222 of file raCamera.h.

◆ m_fFarPlane

float raCamera::m_fFarPlane
protected

Definition at line 229 of file raCamera.h.

◆ m_fFOV

float raCamera::m_fFOV
protected

Definition at line 226 of file raCamera.h.

◆ m_fFramesToSmoothMouseData

float raCamera::m_fFramesToSmoothMouseData
protected

Definition at line 209 of file raCamera.h.

◆ m_fMoveScaler

float raCamera::m_fMoveScaler
protected

Definition at line 232 of file raCamera.h.

◆ m_fNearPlane

float raCamera::m_fNearPlane
protected

Definition at line 228 of file raCamera.h.

◆ m_fRotationScaler

float raCamera::m_fRotationScaler
protected

Definition at line 231 of file raCamera.h.

◆ m_fTotalDragTimeToZero

FLOAT raCamera::m_fTotalDragTimeToZero
protected

Definition at line 223 of file raCamera.h.

◆ m_GamePadLastActive

double raCamera::m_GamePadLastActive[4]
protected

Definition at line 197 of file raCamera.h.

◆ m_hwnd

HWND raCamera::m_hwnd
protected

Definition at line 243 of file raCamera.h.

◆ m_mCameraWorld

raMatrix raCamera::m_mCameraWorld
protected

Definition at line 192 of file raCamera.h.

◆ m_mOrtho

raMatrix raCamera::m_mOrtho
protected

Definition at line 194 of file raCamera.h.

◆ m_mProj

raMatrix raCamera::m_mProj
protected

Definition at line 193 of file raCamera.h.

◆ m_mView

raMatrix raCamera::m_mView
protected

Definition at line 191 of file raCamera.h.

◆ m_nCurrentButtonMask

int raCamera::m_nCurrentButtonMask
protected

Definition at line 206 of file raCamera.h.

◆ m_nMouseWheelDelta

int raCamera::m_nMouseWheelDelta
protected

Definition at line 207 of file raCamera.h.

◆ m_ptLastMousePosition

POINT raCamera::m_ptLastMousePosition
protected

Definition at line 202 of file raCamera.h.

◆ m_rcDrag

RECT raCamera::m_rcDrag
protected

Definition at line 218 of file raCamera.h.

◆ m_vDefaultEye

raVector3 raCamera::m_vDefaultEye
protected

Definition at line 211 of file raCamera.h.

◆ m_vDefaultLookAt

raVector3 raCamera::m_vDefaultLookAt
protected

Definition at line 212 of file raCamera.h.

◆ m_vEye

raVector3 raCamera::m_vEye
protected

Definition at line 213 of file raCamera.h.

◆ m_vGamePadLeftThumb

raVector3 raCamera::m_vGamePadLeftThumb
protected

Definition at line 195 of file raCamera.h.

◆ m_vGamePadRightThumb

raVector3 raCamera::m_vGamePadRightThumb
protected

Definition at line 196 of file raCamera.h.

◆ m_vKeyboardDirection

raVector3 raCamera::m_vKeyboardDirection
protected

Definition at line 201 of file raCamera.h.

◆ m_vLookAt

raVector3 raCamera::m_vLookAt
protected

Definition at line 214 of file raCamera.h.

◆ m_vMaxBoundary

raVector3 raCamera::m_vMaxBoundary
protected

Definition at line 240 of file raCamera.h.

◆ m_vMinBoundary

raVector3 raCamera::m_vMinBoundary
protected

Definition at line 239 of file raCamera.h.

◆ m_vMouseDelta

raVector2 raCamera::m_vMouseDelta
protected

Definition at line 208 of file raCamera.h.

◆ m_vRotVelocity

raVector2 raCamera::m_vRotVelocity
protected

Definition at line 224 of file raCamera.h.

◆ m_vVelocity

raVector3 raCamera::m_vVelocity
protected

Definition at line 219 of file raCamera.h.

◆ m_vVelocityDrag

raVector3 raCamera::m_vVelocityDrag
protected

Definition at line 221 of file raCamera.h.


The documentation for this class was generated from the following files: