vtlib library
Public Member Functions | List of all members
VFlyer Class Reference
Inheritance diagram for VFlyer:
Inheritance graph

Public Member Functions

void SetGravity (float grav)
void SetGroundTester (vtHeightConstrain *pEng)
void SetDamping (float factor)
void OnMouse (vtMouseEvent &event)
 Virtual handler, to catch mouse events, can be overridden by your engine class.
void Eval ()
- Public Member Functions inherited from vtTerrainFlyer
void SetHeightField (const vtHeightField3d *pHF)
 Set the heightfield on which to do the terrain following.
- Public Member Functions inherited from vtFlyer
void SetSpeed (float fSpeed)
float GetSpeed ()
float GetCurrentSpeed ()
 Current speed (meters/second as of the most recent frame)
- Public Member Functions inherited from vtLastMouse
void GetNormalizedMouseCoords (float &mx, float &my)
- Public Member Functions inherited from vtEngine
osg::Referenced * GetTarget (uint which=0)
void AddTarget (osg::Referenced *ptr)
void RemoveTarget (osg::Referenced *ptr)
uint NumTargets ()
 Return the number of targets for this engine.
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.

Additional Inherited Members

- Public Attributes inherited from vtLastMouse
int m_buttons
IPoint2 m_pos
int m_flags

Detailed Description

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

Member Function Documentation

void VFlyer::Eval ( )

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  factor)

Set the damping of the velocity, per second. A typical range is from 1 (very little damping) to 10 (a lot of damping).

void VFlyer::SetGravity ( float  grav)

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)

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.