Public Member Functions | |
| const cVector3f & | GetPosition () const |
| void | SetPosition (const cVector3f &avPos) |
| void | MoveForward (float afDist) |
| void | MoveRight (float afDist) |
| void | MoveUp (float afDist) |
| void | SetFOV (float afAngle) |
| float | GetFOV () |
| void | SetAspect (float afAngle) |
| float | GetAspect () |
| void | SetFarClipPlane (float afX) |
| float | GetFarClipPlane () |
| void | SetNearClipPlane (float afX) |
| float | GetNearClipPlane () |
| void | SetInifintiveFarPlane (bool abX) |
| bool | GetInifintiveFarPlane () |
| cFrustum * | GetFrustum () |
| eCameraRotateMode | GetRotateMode () |
| eCameraMoveMode | GetMoveMode () |
| void | SetRotateMode (eCameraRotateMode aMode) |
| void | SetMoveMode (eCameraMoveMode aMode) |
| void | ResetRotation () |
| cVector3f | UnProject (const cVector2f &avScreenPos, iLowLevelGraphics *apLowLevel) |
| void | AttachEntity (iEntity3D *apEntity) |
| void | RemoveEntity (iEntity3D *apEntity) |
| cNode3D * | GetAttachmentNode () |
| void | ClearAttachedEntities () |
| void | SetPitch (float afAngle) |
| void | SetYaw (float afAngle) |
| void | SetRoll (float afAngle) |
| void | AddPitch (float afAngle) |
| void | AddYaw (float afAngle) |
| void | AddRoll (float afAngle) |
| float | GetPitch () const |
| float | GetYaw () const |
| float | GetRoll () const |
| void | SetPitchLimits (cVector2f avLimits) |
| const cVector2f & | GetPitchLimits () |
| void | SetYawLimits (cVector2f avLimits) |
| const cVector2f & | GetYawLimits () |
| const cMatrixf & | GetViewMatrix () |
| const cMatrixf & | GetProjectionMatrix () |
| const cMatrixf & | GetMoveMatrix () |
| void | SetModelViewMatrix (iLowLevelGraphics *apLowLevel) |
| void | SetProjectionMatrix (iLowLevelGraphics *apLowLevel) |
| cVector3f | GetEyePosition () |
| eCameraType | GetType () |
| cVector3f | GetForward () |
| cVector3f | GetRight () |
| cVector3f | GetUp () |
| void | SetPrevView (const cMatrixf &a_mtxA) |
| void | SetPrevProjection (const cMatrixf &a_mtxA) |
| cMatrixf & | GetPrevView () |
| cMatrixf & | GetPrevProjection () |
| virtual void | SetModelViewMatrix (iLowLevelGraphics *apLowLevel)=0 |
| virtual void | SetProjectionMatrix (iLowLevelGraphics *apLowLevel)=0 |
| virtual cVector3f | GetEyePosition ()=0 |
| virtual eCameraType | GetType ()=0 |
| void hpl::cCamera3D::MoveForward | ( | float | afDist | ) |
Move forward (or back) according to the move mode.
| afDist |
| void hpl::cCamera3D::MoveRight | ( | float | afDist | ) |
Move right (or left) according to the move mode.
| afDist |
| void hpl::cCamera3D::MoveUp | ( | float | afDist | ) |
Move up (or down) according to the move mode.
| afDist |
|
inline |
This sets the far plane so that no far clipping is made. The FarClipPlane is still used for creating bounding box and frustum and should be set to some value.
| void hpl::cCamera3D::SetRotateMode | ( | eCameraRotateMode | aMode | ) |
Set the mode to calculate the rotation angles. EulerAngles: Yaw, Pitch and Roll are used. Matrix: The matrix is changed directly.
| void hpl::cCamera3D::SetMoveMode | ( | eCameraMoveMode | aMode | ) |
Set the mode to calculate movement. Walk: only moving in the XZ plane Fly: moving in the dir the camera is facing.
| void hpl::cCamera3D::ResetRotation | ( | ) |
Resets all rotation
| cVector3f hpl::cCamera3D::UnProject | ( | const cVector2f & | avScreenPos, |
| iLowLevelGraphics * | apLowLevel | ||
| ) |
Unproject the screen coordinate to world space.
|
inline |
Set the limits within the pitch can move
| avLimits | x = high limt and y low.If both are 0 limits are disabled. |
|
inline |
Set the limits within the yaw can move
| avLimits | x = high limt and y low. If both are 0 limits are disabled. |
|
virtual |
Implements hpl::iCamera.
|
virtual |
Implements hpl::iCamera.
|
virtual |
Implements hpl::iCamera.
|
inlinevirtual |
Implements hpl::iCamera.