VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
4.17 - DI-Guy Integration

VR-Forces has built-in support for DI-Guy models.

It publishes DI-Guy animations and appearances, which 3D visualization applications such as the VR-Forces front-end and VR-Vantage Stealth can use to control lifeform models. The DI-Guy representation of the simulation object is stored in its state repository in the container class DtRwDIGuyCharacterInfo. This holds DI-Character, the current appearance, and the animation of the simulation object.

The DtDiGuyController class handles changes to the DI-Guy representation of the character and keeps the DI-Guy animation the simulation object is currently performing synchronized with the actual simulation of the simulation object. It responds to the Set DI-Guy Appearance set data request and updates the DI-Guy appearance in the simulation object's state repository. It responds to any DI-Guy Animation tasks and updates the simulation object's DI-Guy animation.

It maintains the synchronization between the DI-Guy animation that is being performed visually and where the enity is in the simulation by reading the data file, character_digest.xml. This file is produced by the DI-Guy application. It lists:

The ./appData/settings/vrfSim/character_animations_table.mtl configuration file clarifies and sorts the information coming from ./appData/settings/vrfSim/character_digest.xml. You can edit this file to set a user-friendly display name for the animation and determine which animations are taskable and which are intrinsic.

Note
If you set an animation to intrinsic that is not intrinsic in the original character_animations_table.mtl file, you must extend the DtDIGuyController to handle that animation. This is because VR-Forces has to know how to synchronize the animation with the simulation object.

The DtDiGuyCharacterDataMgr class reads the configuration files when VR-Forces starts. It holds a list of DtDiGuyCharacterData containers that represent a list of all of the available DI-Guy characters in VR-Forces. Each DtDiGuyCharacterData container holds all the information about a particular DI-Guy character: the character type, all its possible appearances, all its available taskable animations and all its available intrisic animations.

When a simulation object is not doing a tasked animation, the DtDIGuyController uses the simulation object's current posture, speed, and weapon state to determine the best default intrinsic animation. For example if a simulation object is in a prone position and moving toward a waypoint, the controller queries the available intrinsic animations in the character data for an animation that is in a prone position and has a speed close to the speed of the simulation object. If the simulation object has no prone animations than it gives up and the simulation object finds the closest animation for its default posture.

By default, character_animations.mtl and character_digest.xml are in ./appData/settings/vrfSim. You can specify a different location in vrfSim.mtl file.

[<< The Hostility Manager] [Home] [Top of Page]


Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)