VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Member Functions
makVrv::DtCharacterModel Class Referenceabstract

A special human character model.

Inheritance diagram for makVrv::DtCharacterModel:
Inheritance graph
[legend]

Public Types

enum  Posture {
  Upright, Crouched, Prone, Sitting,
  Kneeling, Swimming, Parachuting, Jumping,
  Squatting, Wading
}
 

Public Member Functions

 DtCharacterModel (DtDe &de, DtUniqueID id)
 
virtual ~DtCharacterModel ()
 
virtual void setFlamesPresent (bool val)=0
 
virtual void setEnginePlume (bool val)=0
 
virtual void setEngineSmoke (bool val)=0
 
virtual void setTrailState (bool val)=0
 
virtual void setLightState (unsigned int light, unsigned int lightState)=0
 
virtual void beginAppearanceEffect (const std::string &effect, const std::string &overrideLink, float overrideScale, const DtVector &overrideOffset, float overrideDuration)=0
 
virtual void endAppearanceEffect (int instantly, const std::string &effect, const std::string &overrideLink)=0
 
virtual void executeGesture (const std::string &gestureName, int reps, float overallDuration, float channelAWeight)=0
 
virtual void endGesture (const std::string &gestureName, float rampDown)=0
 
virtual void setEnableAnimationSmoothing (bool)=0
 
virtual void setDesiredAction (const std::string &action, float speed)=0
 
virtual void fireWeapon ()=0
 
virtual void forceAction (const std::string &action, float speed, bool usePositioning, const DtVector &offset, int autoChooseTransitionBehavior, float transitionSpeed)=0
 
virtual void forceTemporaryAction (const std::string &action, double duration)=0
 
virtual void unforceAction ()=0
 
virtual void setSpeed (float speed)=0
 
virtual void setPosture (int posture)=0
 
virtual bool weaponDeployed () const =0
 
virtual
EntityStateListener::WeaponState 
weaponState () const =0
 
virtual void setWeaponState (EntityStateListener::WeaponState deployed)=0
 
virtual void die (const std::string &deathAction)=0
 
virtual void revive (const std::string &aliveAction)=0
 
virtual void setPaused (bool paused)=0
 
virtual const std::string & className () const
 
virtual void setModelScalingEnabled (bool b)=0
 
virtual void setEmbarked (bool b)=0
 
virtual void setStationName (int name)=0
 
virtual void setStationNumber (DtU16 number)=0
 
virtual void setScale (const DtVector &scale)=0
 
virtual void setWeight (float weightScale)=0
 
virtual void setPartOrientation (int partNumber, const DtTaitBryan &orientation, const DtVector &rotationalVelocity)=0
 
virtual void setPartTranslation (int partNumber, const DtVector &translation, const DtVector &velocity)=0
 
virtual void setPartVisibility (int partNumber, bool visible)=0
 
virtual void setSelected (bool value)=0
 
virtual void setTextureVariations (std::vector< DtCharacterTextureVariationInfo > &varationInfoArray, int force)=0
 
virtual void setDynamicSensorRegion (const std::string &region, bool state)=0
 
virtual void setMotionModelByName (const std::string &modelName)=0
 
virtual void setUseTransitions (bool use)=0
 
virtual void setIsOccupant (bool occupant)=0
 
virtual void setEnabled (bool enabled)=0
 
Distributed functions.
virtual void setCharacterModel (const std::string &characterType)=0
 
DI-Guy Appearance Setters
virtual void setDefaultAppearance (const std::string &appearanceName)=0
 
virtual void setAppearance (const std::string &appearanceName)=0
 
virtual void setHeadAppearance (const std::string &appearanceName)=0
 
virtual void setItemAppearance (const std::string &appearanceName)=0
 
virtual void setCharacterEquipment (const std::string &appearanceName)=0
 
virtual void setUnit (unsigned short country, unsigned char service, unsigned short patch, bool setPersonal)=0
 
virtual void setPersonalUnit (unsigned short country, unsigned char service, unsigned short patch)=0
 
virtual void setRank (unsigned short country, unsigned char service, unsigned short patch)=0
 
virtual void setCharacterName (const std::string &name)=0
 
- Public Member Functions inherited from makVrv::DtModel
 DtModel (DtDe &de, DtUniqueID id)
 
virtual ~DtModel ()
 
DtModelInstancecreateModelInstance (const std::string &modelDefName, bool realize=true)
 
virtual void setModelDefinition (const std::string &str)
 
virtual const std::string & modelDefinitionName ()
 
virtual void saveModelToFile (const std::string &filename)
 
unsigned int transformSize () const
 
virtual void setPosition (int vtx, const DtVector &position)
 
virtual const DtVectorposition (int vtx=0) const
 
virtual void removePosition (int vtx)
 
virtual void setPositionOffset (const DtVector &positionOffset)
 
virtual const DtVectorpositionOffset () const
 
virtual void setOrientation (int vtx, const DtTaitBryan &orientation)
 
virtual void setPositionAndOrientation (int vtx, const DtVector &positionOffset, const DtTaitBryan &orientation)
 
virtual const DtTaitBryan & orientation (int vtx=0) const
 
virtual void setOrientationOffset (const DtTaitBryan &orientationOffset)
 
virtual const DtTaitBryan & orientationOffset () const
 
virtual void enableColorBlending (bool b)
 
virtual void setBlendColor (float r, float g, float b, float a)
 
virtual void getBlendColor (float &r, float &g, float &b, float &a)
 
virtual bool colorBlendingEnabled () const
 
virtual void setColor (float r, float g, float b, float a)
 
virtual void enableLighting (bool l)
 
virtual int modelSet () const
 
const DtVectorboundingBoxExtents () const
 
void getBoundingBoxExtents (double &x, double &y, double &z) const
 
const DtVectorboundingBoxCenter () const
 
virtual void getBoundingBoxCenter (double &x, double &y, double &z) const
 
virtual void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 
void setContributesToBound (bool trueOrFalse)
 
bool contributesToBound () const
 
DtDede ()
 
virtual void setModelInstance (DtModelInstance *modelInstance)
 
virtual void promoteBackgroundModelInstance (DtModelDefinition &defintion)
 
virtual void setVisible (bool isVisible)
 
virtual bool visible () const
 
DtUniqueID parentSceneObjectID () const
 
virtual void addedToSceneObjectAsProp (const DtUniqueID &sceneObj)
 
virtual void addedToSceneObject (const DtUniqueID &sceneObj, int modelSet, int visualizerType)
 
virtual void setElementId (DtUniqueID id)
 
virtual void removedFromSceneObject ()
 
virtual void setIsSupportModel (bool isSupport)=0
 
virtual void setSolid (bool isSolid)
 
virtual bool isProp ()
 
virtual void updateMinLastFrameDistance (float distance)
 
virtual void resetLastFrameDistance ()
 
virtual float minLastFrameDistance () const
 
virtual DtModelInstancemodelInstance ()
 
virtual const DtModelInstancemodelInstance () const
 
int visualizerType () const
 
virtual bool supportsMultithreadedLoad ()
 
virtual void backgroundLoad ()
 
virtual void foregroundLoad ()
 
virtual bool isActivelyBackgroundLoading ()
 
virtual DtLoaderHandlegetLoadQueueHandle ()
 

Private Member Functions

 DtCharacterModel (const DtCharacterModel &)=delete
 
DtCharacterModeloperator= (const DtCharacterModel &)=delete
 

Additional Inherited Members

- Public Attributes inherited from makVrv::DtModel
boost::signalslib::signal
< void(DtModel *)> 
signal_modelToBeDestroyed
 
boost::signalslib::signal
< void(DtModel *)> 
signal_modelChanged
 
boost::signalslib::signal
< bool(DtModel *, bool),
SlotReturnOR
signal_visibilityChangeRequested
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceCreated
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceToBeDestroyed
 
- Protected Types inherited from makVrv::DtModel
typedef std::vector
< ObjectTransform
TransformList
 
- Protected Member Functions inherited from makVrv::DtModel
virtual void addToScene (const DtUniqueID &sceneObjectId, int modelSet, int visualizerType)=0
 
virtual void addToSceneAsProp (const DtUniqueID &sceneObjectId)
 
virtual void removeFromScene ()=0
 
virtual void initializeModelInstance ()
 
void slot_modelInstanceChanged (DtModelInstance *instance)
 
virtual void waitAndClearLoadHandle ()
 
virtual void removedFromLoadQueue ()
 
virtual void setDoneBackgroundLoading ()
 
virtual void setActivelyBackgroundLoading ()
 
- Protected Attributes inherited from makVrv::DtModel
DtLoaderHandlemyInLoadQueueHandle
 
DtDemyDe
 
const DtUniqueID myUniqueId
 
bool myColorBlendingEnabled
 
DtModelInstancemyBackgroundModelInstance
 
float myMinLastFrameDistance
 
TransformList myTransforms
 
DtModelInstancemyModelInstance
 
int myModelSet
 
int myVisualizerType
 
bool myContributesToBound
 
DtUniqueID myParentSceneObjectID
 
bool myIsPropFlag
 
float myBlendColor [4]
 
bool myVisibleFlag
 
DtVector myPositionOffset
 
DtTaitBryan myOrientationOffset
 
std::string myModelDefinitionName
 
- Static Protected Attributes inherited from makVrv::DtModel
static bool theInittedState
 

Member Enumeration Documentation

Enumerated postures that can be used in the setPosture method. In the DtDiguyCharacterModel class, the values passed in to setPosture are cast directly to diguyMotionPosture, so it's important that any changes made to this enumeration still line up with the enumeration values in diguy.

Enumerator
Upright 
Crouched 
Prone 
Sitting 
Kneeling 
Swimming 
Parachuting 
Jumping 
Squatting 
Wading 

Constructor & Destructor Documentation

makVrv::DtCharacterModel::DtCharacterModel ( DtDe de,
DtUniqueID  id 
)

CTOR.

virtual makVrv::DtCharacterModel::~DtCharacterModel ( )
virtual

DTOR.

makVrv::DtCharacterModel::DtCharacterModel ( const DtCharacterModel )
privatedelete

Copy CTOR (Not implemented - non-copyable).

Member Function Documentation

DtCharacterModel& makVrv::DtCharacterModel::operator= ( const DtCharacterModel )
privatedelete

Assignment operator (Not implemented - non-copyable).

virtual void makVrv::DtCharacterModel::setCharacterModel ( const std::string &  characterType)
pure virtual

Override the character model in the model definition. This is necessary when explicitly setting the character via custom network messages.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setDefaultAppearance ( const std::string &  appearanceName)
pure virtual

set the base body appearance

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setAppearance ( const std::string &  appearanceName)
pure virtual

set the base body appearance

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setHeadAppearance ( const std::string &  appearanceName)
pure virtual

sets the current character head

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setItemAppearance ( const std::string &  appearanceName)
pure virtual

sets the character current hand item

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setCharacterEquipment ( const std::string &  appearanceName)
pure virtual

sets additional equipment the character has | separated list, empty string to reset

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setUnit ( unsigned short  country,
unsigned char  service,
unsigned short  patch,
bool  setPersonal 
)
pure virtual

Sets the character's primary unit patch.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setPersonalUnit ( unsigned short  country,
unsigned char  service,
unsigned short  patch 
)
pure virtual

Sets the character's personal unit patch.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setRank ( unsigned short  country,
unsigned char  service,
unsigned short  patch 
)
pure virtual

Sets the character's rank patch.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setCharacterName ( const std::string &  name)
pure virtual

Sets the text on the character's uniform.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setFlamesPresent ( bool  val)
pure virtual

turn on/off flames

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setEnginePlume ( bool  val)
pure virtual

turn on/off engine smoke plume

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setEngineSmoke ( bool  val)
pure virtual

turn on/off engine smoke

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setTrailState ( bool  val)
pure virtual

turn on/off missle trail

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setLightState ( unsigned int  light,
unsigned int  lightState 
)
pure virtual

turn on/off various lights

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::beginAppearanceEffect ( const std::string &  effect,
const std::string &  overrideLink,
float  overrideScale,
const DtVector overrideOffset,
float  overrideDuration 
)
pure virtual

starts a diguy particles effect

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::endAppearanceEffect ( int  instantly,
const std::string &  effect,
const std::string &  overrideLink 
)
pure virtual

ends a diguy particle effect

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::executeGesture ( const std::string &  gestureName,
int  reps,
float  overallDuration,
float  channelAWeight 
)
pure virtual

starts a diguy gesture, a animation that plays a limited amount

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::endGesture ( const std::string &  gestureName,
float  rampDown 
)
pure virtual

interrups the gesture incase it's still playing

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setEnableAnimationSmoothing ( bool  )
pure virtual

Sets whether or not to use DI-Guy use_guides for positioning and orientation. Note this will only have an effect if use_guides is set to 1. The default, if use_guides is 1, to use position smoothing.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setDesiredAction ( const std::string &  action,
float  speed 
)
pure virtual

Set the action to attempt.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::fireWeapon ( )
pure virtual

play fire weapon gesture and trigger effects.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::forceAction ( const std::string &  action,
float  speed,
bool  usePositioning,
const DtVector offset,
int  autoChooseTransitionBehavior,
float  transitionSpeed 
)
pure virtual

Force an action. Use the given speed, and apply the offset over the course of the action.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::forceTemporaryAction ( const std::string &  action,
double  duration 
)
pure virtual

Force an action for a specific amount of time.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::unforceAction ( )
pure virtual

Restore the ability to use posture/weapon state, which is disabled when an explicit action is set.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setSpeed ( float  speed)
pure virtual

Set the speed of the character.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setPosture ( int  posture)
pure virtual

Set the posture of the model.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual bool makVrv::DtCharacterModel::weaponDeployed ( ) const
pure virtual

Get whether the weapon is deployed.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual EntityStateListener::WeaponState makVrv::DtCharacterModel::weaponState ( ) const
pure virtual

Get the current state of the weapon.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setWeaponState ( EntityStateListener::WeaponState  deployed)
pure virtual

Set the current state of the weapon.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::die ( const std::string &  deathAction)
pure virtual

Tell the character to 'die. Dead characters perform their death action then disable most dynamic behavior (saving CPU cycles).

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::revive ( const std::string &  aliveAction)
pure virtual

Revive a previously dead character.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setPaused ( bool  paused)
pure virtual

Set that the character is paused.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual const std::string& makVrv::DtCharacterModel::className ( ) const
virtual

Get the class name of the model instance owner. This is used to control how model instances are created.

Reimplemented from makVrv::DtModel.

Reimplemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setModelScalingEnabled ( bool  b)
pure virtual

Indicate whether or not this model may be model-scaled Default is false.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setEmbarked ( bool  b)
pure virtual

Set/Get embarked state.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setStationName ( int  name)
pure virtual

Set embarked state station name.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setStationNumber ( DtU16  number)
pure virtual

Set embarked state station number (diguy use this for bone index)

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setScale ( const DtVector scale)
pure virtual
virtual void makVrv::DtCharacterModel::setWeight ( float  weightScale)
pure virtual
virtual void makVrv::DtCharacterModel::setPartOrientation ( int  partNumber,
const DtTaitBryan &  orientation,
const DtVector rotationalVelocity 
)
pure virtual

Rotate the part.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setPartTranslation ( int  partNumber,
const DtVector translation,
const DtVector velocity 
)
pure virtual

translate the part.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setPartVisibility ( int  partNumber,
bool  visible 
)
pure virtual

control part visibility, not connected yet.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setSelected ( bool  value)
pure virtual
virtual void makVrv::DtCharacterModel::setTextureVariations ( std::vector< DtCharacterTextureVariationInfo > &  varationInfoArray,
int  force 
)
pure virtual
virtual void makVrv::DtCharacterModel::setDynamicSensorRegion ( const std::string &  region,
bool  state 
)
pure virtual

Set the state of a dynamic sensor region.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setMotionModelByName ( const std::string &  modelName)
pure virtual

Set the motion model of the character This is currently used only for occupants.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setUseTransitions ( bool  use)
pure virtual

Set whether animations use transitions and ramp downs.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setIsOccupant ( bool  occupant)
pure virtual

Set whether this DI-Guy is used as a pilot/driver/occupant for a vehicle.

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.

virtual void makVrv::DtCharacterModel::setEnabled ( bool  enabled)
pure virtual

Set whether the character is enabled (processing updates, etc.)

Implemented in makVrv::DtDiGuyCharacterModel, and makVrv::DtDummyCharacterModel.


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

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)