Umasoft
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Member Functions | Protected Attributes | List of all members
VFlyer Class Reference

#include <NavEngines.h>

Inheritance diagram for VFlyer:
vtTerrainFlyer vtFlyer vtLastMouse vtEngine vtEnabledBase

Public Member Functions

 VFlyer (float scale)
 
void SetVerticalVelocity (float velocity)
 
void SetGravity (float grav)
 
void SetGroundTester (vtHeightConstrain *pEng)
 
void SetDamping (float damp)
 
void Eval ()
 
- Public Member Functions inherited from vtTerrainFlyer
 vtTerrainFlyer (float fSpeed, bool bAllowRoll=false)
 
void SetHeightField (vtHeightField3d *pHF)
 Set the heightfield on which to do the terrain following.
 
void SetExag (bool bDo)
 
bool GetExag ()
 
- Public Member Functions inherited from vtFlyer
 vtFlyer (float fSpeed=1.0f, bool bAllowRoll=false)
 
void SetSpeed (float fSpeed)
 
float GetSpeed ()
 
void SetAlwaysMove (bool bMove)
 
void SetMultiplier (float fMult)
 
void SetDOF (DOF dof, bool bTrue)
 
bool GetDOF (DOF dof)
 
float GetCurrentSpeed ()
 Current speed (meters/second as of the most recent frame)
 
- Public Member Functions inherited from vtLastMouse
void OnMouse (vtMouseEvent &event)
 Virtual handler, to catch mouse events, can be overridden by your engine class.
 
void GetNormalizedMouseCoords (float &mx, float &my)
 
- Public Member Functions inherited from vtEngine
osg::Referenced * GetTarget (uint which=0)
 
void AddTarget (osg::Referenced *ptr)
 
void SetTarget (osg::Referenced *ptr)
 
void RemoveTarget (osg::Referenced *ptr)
 
uint NumTargets ()
 Return the number of targets for this engine.
 
void setName (const char *str)
 
const char * getName ()
 
virtual void OnKey (int key, int flags)
 Virtual handler, to catch keyboard events, can be overridden by your engine class.
 
virtual void OnWindowSize (int width, int height)
 Virtual handler, to catch resize events, can be overridden by your engine class.
 
void SetWindow (vtWindow *pWin)
 
vtWindowGetWindow ()
 
void AddChild (vtEngine *pEngine)
 
void RemoveChild (vtEngine *pEngine)
 
vtEngineGetChild (uint i)
 
uint NumChildren ()
 
void AddChildrenToList (vtArray< vtEngine * > &list, bool bEnabledOnly)
 
- Public Member Functions inherited from vtEnabledBase
virtual void SetEnabled (bool bOn)
 
bool GetEnabled ()
 

Protected Attributes

FPoint3 m_Velocity
 
float m_last_time
 
float m_fGravity
 
float m_fDamping
 
vtHeightConstrainm_pConstrain
 
- Protected Attributes inherited from vtTerrainFlyer
vtHeightField3dm_pHeightField
 
bool m_bExag
 
- Protected Attributes inherited from vtFlyer
float m_fSpeed
 
float m_fMult
 
bool m_bDOF [6]
 
bool m_bAlwaysMove
 
float m_fCurrentSpeed
 

Additional Inherited Members

- Public Types inherited from vtFlyer
enum  DOF {
  DOF_X = 0, DOF_Y, DOF_Z, DOF_PITCH,
  DOF_YAW, DOF_ROLL
}
 
- Public Attributes inherited from vtLastMouse
int m_buttons
 
IPoint2 m_pos
 
int m_flags
 
- Protected Member Functions inherited from vtFlyer
void DoKeyNavigation ()
 

Detailed Description

Similar to vtTerrainFlyer, but a velocity is maintained. Viewpoint moves even after mouse button is released.

Member Function Documentation

void VFlyer::Eval ( )
virtual

Virtual handler, will be called every frame to do the work of the engine. You must override this if you want your engine to be useful.

Reimplemented from vtTerrainFlyer.

void VFlyer::SetDamping ( float  damp)
inline

Set the damping of the velocity, per second. For example, a value of 0.9 would reduce the velocity by 10% of its magnitude per second.

void VFlyer::SetGravity ( float  grav)
inline

Set the downward acceleration, in meter per second squared. For example, a value of 9.81 would be normal gravity at the earth's surface.

void VFlyer::SetGroundTester ( vtHeightConstrain pEng)
inline

In order for gravity to cease when the target is prevented from falling, e.g. when it is sitting on the ground, supply the engine you are using to keep the target above the ground.


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