40 #ifndef _cameracontroller_h
41 #define _cameracontroller_h
44 #include "rayquerytool.h"
121 void CheckAngleRollover(
Real Angle);
124 void CheckAngleLimits();
127 void CheckAllAngles();
134 Real FindDistanceToGround();
166 void SetHoverHeight(
const Real& Hover);
169 Real GetHoverHeight()
const;
174 void SetYawLimits(
const Real& UpperLimit,
const Real& LowerLimit);
176 void RemoveYawLimits();
181 void SetPitchLimits(
const Real& UpperLimit,
const Real& LowerLimit);
183 void RemovePitchLimits();
188 void SetRollLimits(
const Real& UpperLimit,
const Real& LowerLimit);
190 void RemoveRollLimits();
197 void MoveForward(
Real Units);
200 void MoveBackward(
Real Units);
203 void StrafeLeft(
Real Units);
206 void StrafeRight(
Real Units);
Real Lower
The lower limit for rotation, in radians.
Real HoverHeight
The height at which the camera is to remain above the terrain.
MovementMode
Possible options for determining how the camera should move relative to the world.
AngleLimits * RollLimits
A pointer to the angle limits for rotations on the Z axis.
Real YawRad
The current rotation of the camera on the Y axis.
CCM_Fly: This is the default option for every Camera Controller. Allows the camera unrestrained movem...
All the definitions for datatypes as well as some basic conversion functions are defined here...
AngleLimits()
Class constructor.
Real RollRad
The current rotation of the camera on the Z axis.
float Real
A Datatype used to represent a real floating point number.
Real Upper
The upper limit for rotation, in radians.
MovementMode CurrentMMode
The mode with which the camera should move around the scene.
AngleLimits * YawLimits
A pointer to the angle limits for rotations on the Y axis.
This is the proxy class for placing and manipulating a camera in the scene.
This is a simplified controller class for use with cameras.
The bulk of the engine components go in this namspace.
Real PitchRad
The current rotation of the camera on the X axis.
RayQueryTool RayCaster
A ray casting tool used to determine surrounding geometry to limit movement.
AngleLimits * PitchLimits
A pointer to the angle limits for rotations on the X axis.
Boundaries for rotation on one axis.
Graphics::CameraProxy * Controlled
A pointer to the Camera being controlled.