![]() |
DI-Guy SDK Documentation
13.5
|
#include <declspec_bdiutil.h>Go to the source code of this file.
Macros | |
| #define | CPLUSPLUS_ONLY |
Misc. Constants | |
| #define | DIGUY_PI (3.14159265358979323f) |
| DI-Guy radians and degrees conversion factors. More... | |
| #define | DIGUY_RAD2DEG (180.0f / DIGUY_PI) |
| #define | DIGUY_DEG2RAD (DIGUY_PI / 180.0f) |
| #define | DIGUY_DEFAULT_FLOAT (-16384.0f) |
| This value is a magic number that, when passed to certain functions, means that the function should use or compute an appropriate default value for the argument. More... | |
| #define | DIGUY_DEFAULT_INT (-16384) |
| This value is a magic number that, when passed to certain functions, means that the function should use or compute an appropriate default value for the argument. More... | |
Variables | |
| LALALALALA | |
| #define CPLUSPLUS_ONLY |
| #define DIGUY_PI (3.14159265358979323f) |
DI-Guy radians and degrees conversion factors.
| #define DIGUY_RAD2DEG (180.0f / DIGUY_PI) |
| #define DIGUY_DEG2RAD (DIGUY_PI / 180.0f) |
| #define DIGUY_DEFAULT_FLOAT (-16384.0f) |
This value is a magic number that, when passed to certain functions, means that the function should use or compute an appropriate default value for the argument.
| #define DIGUY_DEFAULT_INT (-16384) |
This value is a magic number that, when passed to certain functions, means that the function should use or compute an appropriate default value for the argument.
| #define DIGUY_LOAD_MANAGER_NUM_ZONES (4) |
| #define DIGUY_LOAD_MANAGER_NUM_NONVISIBLE_ZONE_INDEX (3) |
| typedef int diguyCharacterFeelerNumber |
This enumeration lists the standard feelers used for static object avoidance used by I-Guy and agent characters.
| enum diguyCallbackReturn |
DI-Guy callbacks return a value of type diguyCallbackReturn, which will be DIGUY_CALLBACK_STOP or DIGUY_CALLBACK_CONTINUE.
If the callback returns DIGUY_CALLBACK_STOP, the default handler of the function will not be called; the callback is asserting that it has done everything necessary for the function call. If the callback returns DIGUY_CALLBACK_CONTINUE, the default handler for the function will be called after the callback.
| Enumerator | |
|---|---|
| DIGUY_CALLBACK_STOP | |
| DIGUY_CALLBACK_CONTINUE | |
| enum diguyCharacterClass |
DI-Guy character classes.
This is a high-level description of the type of thing a character represents.
DI-Guy character appearance query API, this is for diguyCharacter::get_num_appearances_of_type()
| Enumerator | |
|---|---|
| DIGUY_APPEARANCE_BODY | |
| DIGUY_APPEARANCE_HEAD | |
| DIGUY_APPEARANCE_EXPRESSIVE_HEAD | |
| DIGUY_APPEARANCE_HAND_ITEM | |
| DIGUY_APPEARANCE_TYPES_COUNT | |
| enum diguyCharacterMode |
This is an enumeration of the different modes a DI-Guy character can be in.
See diguyCharacter::get_action_mode(), diguyCharacter::get_position_mode().
| Enumerator | |
|---|---|
| DIGUY_CHARACTER_MODE_PATH | |
| DIGUY_CHARACTER_MODE_FREE | |
| DIGUY_CHARACTER_MODE_COUNT | |
This is an enumeration of the different parameter comparison options that can be specified to various DI-Guy function calls, such as diguyCharacter::get_action_from_description().
| Enumerator | |
|---|---|
| DIGUY_PARAMETER_COMPARISON_NEAREST | |
| DIGUY_PARAMETER_COMPARISON_EQUAL | |
| DIGUY_PARAMETER_COMPARISON_GREATER | |
| DIGUY_PARAMETER_COMPARISON_LESS | |
| DIGUY_PARAMETER_COMPARISON_COUNT | |
| enum diguyMuzzle |
This is an enumeration of the different muzzles that can be specified to various DI-Guy function calls, such as diguyCharacter::set_default_weapon_muzzle() and diguyCharacter::fire_weapon().
| Enumerator | |
|---|---|
| DIGUY_MUZZLE_DEFAULT | |
| DIGUY_MUZZLE_RIFLE | |
| DIGUY_MUZZLE_GRENADE_LAUNCHER | |
| DIGUY_MUZZLE_ACCESSORY1 | |
| DIGUY_MUZZLE_TURRET1 | |
| DIGUY_MUZZLE_COUNT | |
| enum diguyImpactType |
This is an enumeration of the different impact types that are found in diguyImpact.
| Enumerator | |
|---|---|
| DIGUY_IMPACT_DIRECT_HIT | |
| DIGUY_IMPACT_NEARBY_DETONATION | |
| DIGUY_IMPACT_VEHICLE_COLLISION | |
| DIGUY_IMPACT_NO_IMPACT | |
| DIGUY_IMPACT_USER_GENERATED | |
DI-Guy camera move modes.
In DI-Guy Scenario in Camera Input Mode, the movement mode of the camera determines what will happen when mouse buttons are pressed in the view window.
| Enumerator | |
|---|---|
| DIGUY_CAMERA_MOVE_DRAG | |
| DIGUY_CAMERA_MOVE_ORBIT | |
| DIGUY_CAMERA_MOVE_FORWARD | |
| DIGUY_CAMERA_MOVE_SIDEWAYS | |
| DIGUY_CAMERA_MOVE_VERTICAL | |
| DIGUY_CAMERA_MOVE_FLY | |
| enum diguyViewFogMode |
| enum diguyHistoryType |
| anonymous enum |
| enum diguyRenderPassFlags |
DI-Guy renderer pass masks, set via diguyApp::set_render_pass_flags().
DIGUY_RENDER_PASS_SKIP_PARTICLES
Particle rendering is skipped.
DIGUY_RENDER_PASS_USE_STORED_LOD_SETTINGS
LOD recalculation is skipped (for built-in OGL pipeline).
DIGUY_RENDER_PASS_REFLECTION
Internal use; water reflection objects are skipped.
DIGUY_RENDER_PASS_SHADOW
Shadow pass assumed; water, environmental effects are skipped.
DIGUY_RENDER_PASS_INTERSECTION
Pick pass assumed; link and shape colors are sent.
DIGUY_RENDER_PASS_DEBUGGING
Used for Shader debugging visualization
DIGUY_RENDER_PASS_TRANSPARENCY_DEBUGGING ,
Used to skip the 2nd render pass optimizations. Assumes that work normally done in pass1 needs to be redone.
| anonymous enum |
DI-Guy error codes.
| anonymous enum |
DI-Guy graphics joint types.
| anonymous enum |
When a scene is rendered in order to select a DI-Guy object from, say, a mouse click, the type of object selected is identified by this enumeration.
This enumeration identifies which playback mode time should follow.
Only valid inside DI-Guy Scenario.
| enum diguyVisibleFlag |
This enumeration lists which parts of a visual object may need to be updated.
The values can be or-ed together.
DIGUY_GRAPHICS_VISUAL_UPDATE_NONE
Nothing in the visual needs to be updated.
DIGUY_GRAPHICS_VISUAL_UPDATE_GEOMETRY
The overall geometry of the visual needs to be updated. This means that vertices and other parts of polygons need to be recalculated.
DIGUY_GRAPHICS_VISUAL_UPDATE_POSITION
The position and/or orientation of the visual needs to be updated. The overall geometry of the visual (polygons, lines, etc.) remains unchanged.
DIGUY_GRAPHICS_VISUAL_UPDATE_MATERIAL
The material of the visual needs to be updated. This can include color, fill options, line width, etc. The geometry and position of the visual remain the same.
DIGUY_GRAPHICS_VISUAL_UPDATE_ALL
All aspects of the visual need to be updated.
| Enumerator | |
|---|---|
| DIGUY_GRAPHICS_VISUAL_UPDATE_NONE | |
| DIGUY_GRAPHICS_VISUAL_UPDATE_GEOMETRY | |
| DIGUY_GRAPHICS_VISUAL_UPDATE_POSITION | |
| DIGUY_GRAPHICS_VISUAL_UPDATE_MATERIAL | |
| DIGUY_GRAPHICS_VISUAL_UPDATE_ALL | |
| enum diguyEulerAngleOrder |
DI-Guy Euler angle orders.
ZXY is the order most commonly used in DIGuy. The meaning is: "rotate around object's z axis (yaw), then its x axis (roll), then its y axis (pitch)."
However, the DI-Guy camera system uses ZYX, since that's more intuitive.
This enumeration is used for various variables in the diguyScenarioMergeSettings object.
In general it tells the diguyScenario::merge() function whether to load objects of a specified type at all, and if so, what to do if a merged object conflicts with an existing object.
DIGUY_MERGE_FLAG_DONT_MERGE
Objects in the merged scenario are not loaded.
DIGUY_MERGE_FLAG_OVERWRITE_EXISTING
Objects in the merged scenario are loaded. In the case of a conflict, the exiting object is overwritten with the values of the merge object.
DIGUY_MERGE_FLAG_KEEP_BOTH
Objects in the merged scenario are loaded. In the case of a conflict, both the exiting object and the merge object are kept, with no modifications. Note that this will leave some ambiguity of referencing objects by name. A warning will be printed. Note that this value is here to allow for backward compatibility; it is not recommended for general use.
DIGUY_MERGE_FLAG_KEEP_EXISTING_ONLY
Objects in the merged scenario are loaded. In the case of a conflict, the exiting object is kept as is and the merge object is discarded.
DIGUY_MERGE_FLAG_KEEP_EXISTING_ONLY_AND_WARN
Same as DIGUY_MERGE_FLAG_KEEP_EXISTING, but also prints a warning.
DIGUY_MERGE_FLAG_RENAME_MERGED
Objects in the merged scenario are loaded. In the case of a conflict, both the exiting object and the merge object are kept, but the merged object is renamed.
DIGUY_MERGE_FLAG_RENAME_MERGED_AND_WARN
Same as DIGUY_MERGE_FLAG_RENAME_MERGED, but also prints a warning.
DIGUY_MERGE_FLAG_RENAME_MERGED_IF_NOT_EQUAL
Objects in the merged scenario are loaded. In the case of a conflict, the existing object and merged object are checked for "equality". If they are the same, the existing object will be kept and the merge object will be discarded. If they are different, both objects will be kept, but the merge object will be renamed.
This enumeration tells DI-Guy what values to use as defaults when the diguyScenario::create_merge_settings() functions is called.
See the documentation for that function for details on what the different values mean.
This enumeration lists the cursors returnable by the plugin function get_cursor().
DIGUY_PLUGIN_MOUSE_CURSOR_NONE
Plugin takes responsibility for drawing cursor, if any.
DIGUY_PLUGIN_MOUSE_CURSOR_LEFT_ARROW
The standard window-system left arrow cursor is shown.
DIGUY_PLUGIN_MOUSE_CURSOR_CROSSHAIR
Crosshair (plus-shaped) cursor is shown.
DIGUY_PLUGIN_MOUSE_CURSOR_POINTING_HAND
Pointing hand cursor is shown.
DIGUY_PLUGIN_MOUSE_CURSOR_FORBIDDEN
Action forbidden cursor is shown.
| Enumerator | |
|---|---|
| DIGUY_PLUGIN_MOUSE_CURSOR_NONE | |
| DIGUY_PLUGIN_MOUSE_CURSOR_LEFT_ARROW | |
| DIGUY_PLUGIN_MOUSE_CURSOR_CROSSHAIR | |
| DIGUY_PLUGIN_MOUSE_CURSOR_POINTING_HAND | |
| DIGUY_PLUGIN_MOUSE_CURSOR_FORBIDDEN | |
This enumeration lists which cross-sections are available for DI-Guy chain simulation visuals.
DIGUY_CHAIN_CROSS_SECTION_SQUARE
The square cross-section is good for tube-like visuals, such as hoses. The normals of the square cross-section point radially outward from the center, giving the visual a rounded, tube-like appearance.
DIGUY_CHAIN_CROSS_SECTION_PLUS
The plus cross-section is good for thin, chain-like visuals.
DIGUY_CHAIN_CROSS_SECTION_COIL
The coil cross-section is good for wires. The chain masses are connected by line segments.
| Enumerator | |
|---|---|
| DIGUY_CHAIN_CROSS_SECTION_SQUARE | |
| DIGUY_CHAIN_CROSS_SECTION_PLUS | |
| DIGUY_CHAIN_CROSS_SECTION_COIL | |
This enumeration lists the input modes available in DI-Guy Scenario views (3D windows) and for DI-Guy Author.
This enumeration lists the windows that can be shown in the DI-Guy Scenario application.
This enumeration lists different types of editing actions that can be performed in the DI-Guy Scenario application.
| anonymous enum |
This enumeration lists "special" (non-ASCII) keys that DI-Guy plugins may respond to.
(These enumerations currently match the Qt 4 Qt::Key_* values.)
| enum diguyAimAlgorithm |
This enumeration lists the methods available for collision detection and avoidance against dynamic objects.
DIGUY_DYNAMIC_AVOIDANCE_METHOD_DISABLED
Dynamic objects are not detected or avoided. In effect this means that characters will walk through each other. If a crowd is far away from the viewpoint, it is not obvious that this is happening. Disabling the crowd's dynamic avoidance can reduce the overhead of the crowd on performance.
DIGUY_DYNAMIC_AVOIDANCE_METHOD_REPULSION_ZONES
Characters are surrounded by zones of repulsion. Other characters that enter these zones have their position, orientation, and/or action changed to try to get out of the zones.
DIGUY_DYNAMIC_AVOIDANCE_METHOD_SIMPLE
This is an experimental method that is still being developed. It should not be used for now.
| Enumerator | |
|---|---|
| DIGUY_DYNAMIC_AVOIDANCE_METHOD_DISABLED | |
| DIGUY_DYNAMIC_AVOIDANCE_METHOD_REPULSION_ZONES | |
| DIGUY_DYNAMIC_AVOIDANCE_METHOD_REPULSION_ZONES_AND_PROJECTED_FORCES | |
This enumeration lists the methods available for collision detection and avoidance against static objects in the environment.
These are usually scene objects and non-moving props.
DIGUY_STATIC_AVOIDANCE_METHOD_DISABLED
Static objects are not detected or avoided. In effect this means that characters can walk through walls. If a crowd is not near any buildings, walls, or solid objects, disabling static avoidance can reduce the overhead of the crowd on performance.
DIGUY_STATIC_AVOIDANCE_METHOD_FEELERS
The character uses 'feelers' to detect static objects and turn away from them.
| Enumerator | |
|---|---|
| DIGUY_STATIC_AVOIDANCE_METHOD_DISABLED | |
| DIGUY_STATIC_AVOIDANCE_METHOD_FEELERS | |
| anonymous enum |
This enumeration lists the state character feelers may be in.
DIGUY_CHARACTER_FEELER_STATUS_NO_CONTACT
Feeler is not in contact with anything.
DIGUY_CHARACTER_FEELER_STATUS_CONTACT_TURN
Feeler is in contact with an object just enough to cause the character to begin to turn.
DIGUY_CHARACTER_FEELER_STATUS_CONTACT_COLLIDE
Feeler is in close contact with an object. The object should be pushing the character away.
DIGUY_CHARACTER_FEELER_STATUS_CONTACT_TURN_AND_COLLIDE
Feeler is within both turn and contact distances of an object.
| Enumerator | |
|---|---|
| DIGUY_CHARACTER_FEELER_STATUS_NO_CONTACT | |
| DIGUY_CHARACTER_FEELER_STATUS_CONTACT_TURN | |
| DIGUY_CHARACTER_FEELER_STATUS_CONTACT_COLLIDE | |
| DIGUY_CHARACTER_FEELER_STATUS_CONTACT_TURN_AND_COLLIDE | |
This enumeration lists the turn directions a feeler can use when its status is DIGUY_CHARACTER_FEELER_STATUS_CONTACT_TURN.
DIGUY_CHARACTER_FEELER_TURN_DIRECTION_NONE
Feeler does not turn the character.
DIGUY_CHARACTER_FEELER_TURN_DIRECTION_L
Feeler turns the character to the left.
DIGUY_CHARACTER_FEELER_TURN_DIRECTION_R
Feeler turns the character to the right.
DIGUY_CHARACTER_FEELER_TURN_DIRECTION_L_OR_R
Feeler turns the character to the left or right, whichever will result in the turn behavior ending more quickly.
| Enumerator | |
|---|---|
| DIGUY_CHARACTER_FEELER_TURN_DIRECTION_NONE | |
| DIGUY_CHARACTER_FEELER_TURN_DIRECTION_L | |
| DIGUY_CHARACTER_FEELER_TURN_DIRECTION_R | |
| DIGUY_CHARACTER_FEELER_TURN_DIRECTION_L_OR_R | |
| enum diguyNavPathAtEnd |
What a character following a nav path will do once it reaches the end of a nav path.
The travel behavior of agents use nav paths.
DIGUY_NAV_PATH_AT_END_REVERSE
Agent reverses direction on the nav path, going through waypoints in opposite order.
DIGUY_NAV_PATH_AT_END_LOOP
Agent's next waypoint is waypoint 0. Best when last waypoint and first waypoint are close to each other, as in a loop path.
DIGUY_NAV_PATH_AT_END_STOP
Stop at the end, switching to behavior none.
DIGUY_NAV_PATH_AT_END_TELEPORT
Teleport to the beginning. In general agents should be out of view at the beginning and end of the path, if possible.
Errors various nav path functions may return.
DI-Guy agent repulsion zones for characters with dynamic avoidance method DIGUY_DYNAMIC_AVOIDANCE_METHOD_REPULSION_ZONES.
| Enumerator | |
|---|---|
| DIGUY_AGENT_REPULSION_NONE | |
| DIGUY_AGENT_REPULSION_LOW | |
| DIGUY_AGENT_REPULSION_MEDIUM | |
| DIGUY_AGENT_REPULSION_HIGH | |
| DIGUY_AGENT_REPULSION_SOLID | |
| DIGUY_AGENT_REPULSION_NUM_ZONES | |
| enum diguyAgentBehavior |
DI-Guy agent behaviors.
Following is a short description of each behavior. See the DI-Guy AI documentation for more details.
DIGUY_AGENT_BEHAVIOR_NONE
Agent functionality is completely inactive. The character's actions are determined by its character path or direct DI-Guy API calls.
DIGUY_AGENT_BEHAVIOR_TRAVEL
Agent attempts to travel close to a path shape. Many agents can use the same path shape for the travel behavior.
DIGUY_AGENT_BEHAVIOR_PATH_FOLLOW
Similar to DIGUY_AGENT_BEHAVIOR_TRAVEL, but agent follows a character path instead of a path shape, and attempts to match the timing of the character path in addition to the path shape. If the agent is interrupted from the path, it will attempt to resume it where it left off.
DIGUY_AGENT_BEHAVIOR_WANDER
Agent wanders a region. In this case wander means it will select a random point within the region and move close to it, and then wait there for a period of time before selecting a new point in the region.
DIGUY_AGENT_BEHAVIOR_MINGLE
Similar to wander, but agents attempt to move together to various places in the region.
DIGUY_AGENT_BEHAVIOR_FLEE
Agent attempts to move away from a specified character or point.
DIGUY_AGENT_BEHAVIOR_PURSUE
Agent attempts to stay close to a specified character or member of a group.
DIGUY_AGENT_BEHAVIOR_ATTACK
Similar to pursue, but once agents are close enough they will attack the target.
DIGUY_AGENT_BEHAVIOR_IDLE
Agent has no particular automatic behavior; it follows its path or moves toward its desired position as set by diguyCharacter::set_desired_position(). It will affect other agents in its crowd, and if pushed away from its desired position it will move back to it.
DI-Guy agent untrap methods.
Following is a short description of each untrap method. See the DI-Guy AI documentation for more details.
DIGUY_AGENT_UNTRAP_METHOD_NONE
The agent makes no attempt to become untrapped. This can result in the agent blindly walking into a wall until its desired position changes.
DIGUY_AGENT_UNTRAP_METHOD_NAV_PATH
The agent will try to create a nav path in its current region to its desired position. If the desired position is not inside the region, a valid nav path may not be able to be found.
DIGUY_AGENT_UNTRAP_METHOD_RANDOM_TURN
The agent will stop moving and turn a random amount. This minor course change can sometimes move a character around a small obstacle.
DIGUY_AGENT_UNTRAP_METHOD_GHOST
Agent feelers will stop having an effect for a short time. This allows the agent to walk through a wall toward its desired position.
DIGUY_AGENT_UNTRAP_METHOD_TELEPORT
This is an extreme method, typically used as a last resort. The agent abruptly teleports to its desired position.
DIGUY_AGENT_UNTRAP_METHOD_STOP_MOVING
Somewhat similar to DIGUY_AGENT_UNTRAP_METHOD_NONE, but the current behavior of the agent is set to none, and the agent character's desired position is set to its current position.
DI-Guy region painting modes.
Painting modes identify what happens when a region paintbrush is used in some of the DI-Guy input modes.
DIGUY_REGION_PAINTBRUSH_MODE_ADDITIVE
Painting will add area to the current subregion. This may end up adding area to the base subregion, as well, as it contains at least the areas of all subregions.
DIGUY_REGION_PAINTBRUSH_MODE_ERASE
Painting will remove area from the current subregion. If the base subregion is erased, all matching areas in other subregions will be erased, as well.
DIGUY_REGION_PAINTBRUSH_MODE_UNGROUND_CLAMP
Painting will remove area from the current subregion, will also remove the height value from the region and the next time the area is painted it will adopt the height values of the new paint command.
DIGUY_REGION_PAINTBRUSH_MODE_MOVE_MESH
Moves the mesh to a new location in space and re-ground clamps
DIGUY_REGION_PAINTBRUSH_MODE_REACHABLE
Painting reachable will indicate that this is a spot the path planner should be willing to traverse. Erasing Reachable colors the spot black and indicates that it's not crossable or paint-able.
DIGUY_REGION_PAINTBRUSH_INTERNAL_MODE_UPDATE_BEHAVIOR_PATH
Internal use only.
DIGUY_REGION_PAINTBRUSH_INTERNAL_MODE_REPLACE
Internal use only.
| enum diguySubregionIndex |
DI-Guy subregions.
Regions are irregularly shaped areas in the scene that can be used in a number of ways.
Regions contain a number of subregions. Each subregion is represented by a different color, and most often the subregions are referred to by their color. Subregions are not mutually exclusive; a point in the scene may be in all of the base, populate, and green subregions, for example.
Many functions that take one subregion as an argument use the string name of the subregion.
Functions that can have multiple subregions specified use a subregion mask made up of diguySubregionMask values that can be or'ed together to indicate multiple valid subregions. See diguySubregionMask for more information.
DIGUY_SUBREGION_BASE
This subregion is really a "super-region", in that its bounds contain all of the other subregions, and possibly more. If any subregion of a top-level region is expanded beyond the bounds of the base subregion, the base subregion will be expanded until it encompasses the expansion. If, however, a non-base subregion is subsequently shrunk, the base subregion will not shrink. If the base subregion is shrunk, any portion of each non-base subregion that is no longer in the base subregion will be removed.
DIGUY_SUBREGION_POPULATE
The subregion into which new crowd agents will be placed if the region is populated or repopulated. This subregion is typically purple.
DIGUY_SUBREGION_[color]
The "color" subregions are free to be used in any way a scenario designer wants. Their colors are based on their name.
DIGUY_SUBREGION_ROAD
Road subregions are commonly used as preferred subregions for vehicle travel, and repulsion subregions for human travel. This subregion is typically gray.
DIGUY_SUBREGION_SIDEWALK
Sidewalk subregions are commonly used as preferred subregions for human travel, and repulsion subregions for vehicles. This subregion is typically white.
DIGUY_SUBREGION_CROSSWALK
Humans will tend to prefer crosswalk subregions over road subregions, but prefer sidewalk subregions over crosswalk subregions. This subregion is typically a light yellow.
| enum diguySubregionMask |
DI-Guy subregions mask values.
Example:
To specify that a function can use either the red or blue subregions, the following syntax is used.
In Perl or C++:
In Lua:
Lua does not natively support bitfields, but support is automatically added via the "LuaBit" library located in $DIGUY/bin/lua/bit.lua.
| enum diguyTacticsUnitType |
This enumeration lists the methods in which the datetime of a scenario can advance.
DIGUY_DATETIME_ADVANCE_METHOD_MANUAL
Datetime does not advance automatically. It can only be set manually, e.g. by a diguyScenario::set_current_datetime() call.
DIGUY_DATETIME_ADVANCE_METHOD_REAL_TIME_RATE
Datetime advances at the same rate as realtime.
DIGUY_DATETIME_ADVANCE_METHOD_SIMULATION_TIME_RATE
Datetime advances at the same rate as simulation time.
| Enumerator | |
|---|---|
| DIGUY_DATETIME_ADVANCE_METHOD_MANUAL | |
| DIGUY_DATETIME_ADVANCE_METHOD_REAL_TIME_RATE | |
| DIGUY_DATETIME_ADVANCE_METHOD_SIMULATION_TIME_RATE | |
DIGUY_DATETIME_NETWORK_MODE_LOCAL_ONLY
Datetime data will be handled locally on this host. No data will be sent on the netword, and no data will be read from the network.
DIGUY_DATETIME_NETWORK_MODE_BROADCAST
Datetime data will be sent from this host to other hosts in the network. The datetime will be encoded in a custom DIGUY_CUSTOM_PDU_ID_BROADCAST_EXERCISE_DATETIME PDU. In general there should be only one host on the network broadcasting datetime data; all others should receive or ignore it.
DIGUY_DATETIME_NETWORK_MODE_RECEIVE
Datetime data will be read from the network from custom DIGUY_CUSTOM_PDU_ID_BROADCAST_EXERCISE_DATETIME PDUs.
| Enumerator | |
|---|---|
| DIGUY_DATETIME_NETWORK_MODE_LOCAL_ONLY | |
| DIGUY_DATETIME_NETWORK_MODE_BROADCAST | |
| DIGUY_DATETIME_NETWORK_MODE_RECEIVE | |
| enum diguySpeedUnits |
This enumeration lists units of speed that can be passed to some DI-Guy API functions.
Note that if one of these values is used specifying an acceleration, add an implicit "per second" to the end. e.g., if 10.0 is passed as an acceleration, with units DIGUY_SPEED_UNITS_MILES_PER_HOUR, the resulting acceleration would be 10.0 miles per hour per second; or in other words, every 1 second speed would increase by 10.0 miles per hour.
| Enumerator | |
|---|---|
| DIGUY_SPEED_UNITS_METERS_PER_SECOND | |
| DIGUY_SPEED_UNITS_KILOMETERS_PER_HOUR | |
| DIGUY_SPEED_UNITS_MILES_PER_HOUR | |
This enumeration lists the ways that data can be generated for DI-Guy characters.
Data typically comes from the DI-Guy motion engine, but at times may be generated by other simulation methods.
This enumeration lists the modes that a DI-Guy character physics sim can be in, when the character simulator is set to DIGUY_CHARACTER_SIMULATOR_PHYSICS_SIM_MODULE.
This enumeration lists the collision groups that a DI-Guy physics sim object can be in.
Characters in different collision groups may not have collisions calculated between them.
This enumeration lists the modes that the DI-Guy vehicle simulator can be in.
| const char* diguy_playback_mode_to_string | ( | diguyScenarioPlaybackMode | playback_mode | ) |
| diguyScenarioPlaybackMode diguy_playback_mode_from_string | ( | const char * | string | ) |
| const char* diguy_input_mode_to_string | ( | diguyScenarioInputMode | input_mode | ) |
| diguyScenarioInputMode diguy_input_mode_from_string | ( | const char * | string | ) |
| const char* diguy_subregion_index_to_string | ( | diguySubregionIndex | subregion_index | ) |
| diguySubregionIndex diguy_subregion_index_from_string | ( | const char * | string | ) |
| const char* diguy_vehicle_simulation_mode_to_string | ( | diguyVehicleSimulationMode | mode | ) |
| diguyVehicleSimulationMode diguy_vehicle_simulation_mode_from_string | ( | const char * | string | ) |
| LALALALALA |