DI-Guy SDK Documentation  13.1
Legacy DI-Guy Changes 9.0 and earlier

Table of Contents

DI-Guy 9.0 and Earlier

DI-Guy API

Note that most changes to the DI-Guy API also apply to DI-Guy Scenario.

Version 9.0.4

Version 9.0.1

Version 9.0.0

Version 8.6.3

  • Fixed some issues with recent changes to reduce path memory overhead.

Version 8.6.2

  • Changes made to support multiple active formations. New arguments added to diguyCharacter::call_formation() and diguyCharacter::break_formation() to support multiple formations. Default behavior remains the same as before.
  • Significant memory savings when dealing with characters with long paths.
  • Added new argument to diguyCharacter::set_current_appearance() function: allow_actor_change. Previously changes to a character's appearance that would result in an actor (size of character) change were not allowed. Passing 1 (the default) for this argument now allows such a change.

Version 8.6.1

  • Added function diguyCharacter::get_current_traveled_path().
  • Improved logic for picking dead action.
  • Removed deprecated functions:
    • diguyLoadManager::set_max_update_period()
    • diguyLoadManager::set_nonvisible_update_rate()
    • diguyLoadManager::set_zone_bounds()
    • diguyLoadManager::set_zone_parameters()
  • Improved DIS/HLA Networking:
    • Added support for Flat Earth and Geocentric coordinates.
    • Coordinate system changes can now be applied while the system is connected to the network.
    • DI-Guy characters can now have different Munition types which are sent over the network as part of the detonation pdus.
  • Improved Munition Support:

    Heavy rewrite/solidification of our munition and detonation code.

    • Characters now have a munition type, defaults to "m16".
    • Munition definitions are stored in the munition_type.cfg file. They have a number of required and optional fields including septet, radius, and special effects to create when triggered.
    • The munition name and radius is now part of diguyImpact structure. This allows the end user to build damage models in scripts that are based on the munition type of an impact, along with fall-off effects based on distance from impact location.
    • Characters hit by broadcast detonations will now call the CALLBACK_ID_IMPACT callback if they have one, this emulates what happens when characters are shot by other DI-Guys. If they are members of a crowd and the crowd has an impact callback that will be called, if no impact callback exists they will die.
    • Crowds should now react to remote detonations.
    • Impacting a scene object will now transmit a detonation.

Version 8.5.0

Version 8.1.0

Version 8.0.6

Version 8.0.5

  • Fixed issue with TXP geometry loader. If external textures are marked as "Unknown" format, the actual format is now derived from the filename extension in the case of .rgb, .rgba, .int, and .inta texture files.

Version 8.0.4

  • Improved documentation for function diguyScenario::update().
  • Fixed some issues with I-Guy and its use of joystick input. I-Guy input for DI-Guy 8 now more closely matches that of previous versions.
  • Fixed some issues with muzzle flashes. In particular, muzzle flashes were not consistently showing up in DI-Guy Scenario, both during initial simulation and during review data playback.
  • DI-Guy now includes a DIGuyLicenseTool application that makes it easier to gather the appropriate information needed to request a license from Boston Dynamics. This utility program can be run during Applications installation, or, after installation is complete, from the DI-Guy folder in the Start Menu.
  • Fixed a problem with programming examples that used OpenAL with the VC7 static libs (Makefile.vc7_md, for example) would crash when an .ogg file was loaded.

Version 8.0.3

  • Fixed some issues with I-Guy:
    • Firing the I-Guy's weapon now correctly uses the trajectory to the crosshair, instead of along the weapon barrel.
    • Keyboard control of looking up and down now possible; use 'Page Up' and 'Page Down' keys.
  • Fixed problem with networked characters climbing hills.
  • Fixed problem with networked characters transitioning too quickly.
  • Added Visual Studio 7.1 solution for diguy_ogl/simple_playback example.
  • Fixed issue with diguyCharacter::stop_all_sounds() and diguyScenario::stop_all_sounds() not saving history events.

Version 8.0.2

  • Fixed problem with some textures not loading properly.
  • Fixed problem with DirectX examples not shutting down cleanly if there is a license problem.

Version 8.0.1

  • Fixed issues with temporary characters not always being destroyed.
  • Fixed issues with temporary characters showing up in review playback.
  • Fixed issues with appearance effects being recycled properly.
  • Fixed problem with eyes not participating in gazing.
  • Rework of many examples in the programming_examples directory. Some new examples added, some older ones removed.
  • Added README.txt files to diguy_plugin examples that better describe what the examples show, and how to use them in DI-Guy Scenario.

Version 8.0.0

  • Initial 8.0 release candidate.
  • Setting of tin (T In) and tout (T Out) calls for characters have been tightened up. For example, a character's tin can no longer be set to before the current scenario t. It could be before, but would cause potential problems. Warning messages are printed to the log when improper tin or tout times are attempted.

Version 7.1.20

Version 7.1.19

Version 7.1.18

Version 7.1.16

Version 7.1.14

  • Fixed issues with scenario merging. Chain settings and particle systems in particular did not merge well.

Version 7.1.13

Version 7.1.12

Version 7.1.11

  • The following functions were added to diguySensorRegion that make it easier to write callback handlers for sensor regions:
    • get_autosense_callback_candidate_entered()
    • get_autosense_callback_candidate_left()
  • Characters now fire live rounds by default when diguyCharacter::fire_weapon() is called. THIS IS A CHANGE FROM PREVIOUS DEFAULT BEHAVIOR. The old behavior can be restored in two ways:
    • In DI-Guy Scenario, the Weapon Params tab on the Character Elements palette has a checkbox called "Weapon Fires Live Rounds". The checkbox can be unchecked, followed by pressing the "Copy to All Characters" button.
    • In a program using the DI-Guy API, the function diguyCharacter::set_weapon_fires_live_rounds() can be called.
  • Character Labels Visibility is now set to 'None' in the default .dss file.
  • Added function to diguyCharacterGuide:
    • diguyCharacterGuide::remove_all_disabled_guides()
  • Made the following functions available to Decision Beads and Decision Events:
  • Removed DI-Guy Graphics API programming example ogl_examples_high_precision/simple_playback_high_precision. Replaced it with streamlined example ogl_examples/simple_playback_far_positions.
  • Fixed problem with props/scene objects showing up at origin in after-action review.

Version 7.1.10

  • Fixed a problem with the DI-Guy Graphics API that prevented textures on some characters from being correctly bound under certain circumstances.

Version 7.1.9

  • The following optional functions were added to plugins:
    • void key_press()
    • void key_release()
  • Added diguyIGuyController class for C++ and script control over the I-Guy character.
  • Setting the dead reckoning time threshold is now done by setting the variable time_threshold in the network.cfg file. The variable tick_period has been deprecated and will no longer have any effect. The default value is 5 seconds.

Version 7.1.18

Version 7.1.7

  • Added parameters polygon_offset_factor and polygon_offset_units to bdiGraphicsInitOgl structure to allow for better control over subface rendering in OpenGL.
  • Addressed some issues with diguyGraphicsLink and far positions.

Version 7.1.6

Version 7.1.5

Version 7.1.4

Version 7.1.3

Version 7.1.12

Version 7.1.11

Version 7.1.0

Version 7.0.9

  • Rewrote portions of network mapping code, custom pdus/specialized motions will now work with more characters. This requires a new version of data, but any character that has been properly tagged with variants and postures should transmit better.
  • Rewrote speed code, networked characters should scale speed to try and match packets that are coming in.

Version 7.0.8

  • Trying to get the position of a invalid link will behave a bit better.

Version 7.0.6

  • Creating a path when a character has none will properly set the initial path name.

Version 7.0.5

  • Fixed a crash that sometimes happened while reading comments out of texture .attr files.

Version 7.0.3

Version 7.0.2

  • Fixed a problem with gazing and aiming not zeroing in on the correct positions when using DI-Guy for Vega.

Version 7.0.1

Version 7.0.0

Version 6.1.10

  • Fixed event propagation bug when event tout is -1 and scenario tout is changed.
  • Added optional actor argument to diguyScenario::add_custom_appearance() function. This fixes a problem with characters not being able to switch to custom appearances with diguyCharacter::set_current_appearance() because of actors being different.
  • Added simple_playback_high_precision and view_far_position that demonstrate off the use of high precision position values.

Version 6.1.9

  • Fixed problem with various diguyWaypoint "get" functions that return angles (e.g., diguyWaypoint::get_yaw_in()); they weren't properly returning angles in degrees.
  • Fixed problem with merging scenarios: merged waypoints at the origin were not being rotated correctly.
  • Fixed problem with config file appearance syntax. The item "shapeset:shape" format caused a crash; it now works again.
  • Fixed problems with required plug-in list not saving or resetting properly.

Version 6.1.8

Version 6.1.7

Version 6.1.6

Version 6.1.5

Version 6.1.4

Version 6.1.3

  • Added new utility function diguy_convert_euler_angle_order(). This function should help DI-Guy API users convert the DI-Guy standard Euler angle order of ZXY (yaw then roll then pitch) into other Euler angle orders.
  • Added new argument rampup_interval to function diguyCharacter::add_motion_texture(). This function makes it possible to more smoothly enter a motion texture. Previously the rampup was hard-coded to 0.2 seconds. If the function is to end existing motion textures, it also uses the passed rampup interval as the rampdown interval for ending the existing motion textures.
  • Fixed annoying error message that was printed when motion textures ended.
  • Added new variants that can be added to custom motions:
    • DIGUY_MOTION_VARIANT_MISC0
    • DIGUY_MOTION_VARIANT_MISC1
    • DIGUY_MOTION_VARIANT_MISC2
    • DIGUY_MOTION_VARIANT_MISC3
    • DIGUY_MOTION_VARIANT_MISC4
    • DIGUY_MOTION_VARIANT_MISC5
    • DIGUY_MOTION_VARIANT_MISC6
    • DIGUY_MOTION_VARIANT_MISC7
    • DIGUY_MOTION_VARIANT_MISC8
    • DIGUY_MOTION_VARIANT_MISC9

Version 6.1.2

Version 6.1.1

Version 6.1.0

Version 6.0.8

  • Changed DI-Guy Graphics API to not print a warning if a geometry file is not found. This allows external loaders to load their own version of a geometry file without warnings, and without the file having to be present in $DIGUY/geometry.
  • Added function diguyCharacter::is_group_member().
  • For Windows, added the DI-Guy version number as a suffix to the .dll that gets installed in the bin directory.

Version 6.0.6

  • Changed default for gaze parameter "orientation enabled for gaze". In DI-Guy 5.x this parameter defaulted to 0 for all characters except the sergeant. In earlier versions of 6.0 this was changed to "1 if character has turning actions, else 0". This change has, however, resulted in too much confusion and user astonishment. The new (and hopefully final) change is to default the parameter to 0 for all characters. This fixes a backwards incompatibility problem where some version 5 characters that were gazing would leave their path on version 6 and thus not complete the actions specified by their path.
  • Implemented function diguyCharacter::end_aim(). This function had been omitted from the DI-Guy API.
  • Fixed problem with initial value of scenario variables, where the integer value of each variable was initialized to zero, even if the intended initial value was nonzero.
  • Fixed problem when merging two scenarios with different values for tick dt. Decision beads, Script event beads, Aim beads and Gaze beads were being improperly scheduled.

Version 6.0.5

Version 6.0.4

Version 6.0.3

  • Fixed a problem with DI-Guy Graphics API functions not being correctly declared for DLL use.
  • Fixed a problem with calling path edit functions on a path that is in use. The change was not being fully propagated to the character's motions.
  • Eliminated GoThere camera instability at low frame rates.
  • Eliminated aiming instability at low frame rates and at low desired locate times.

Version 6.0.2

  • No changes.

Version 6.0.1

  • Fixed problem with motion scaling where the scale factor was being applied twice in some cases. (PR 3029)
  • Removed deprecated diguyCharacter functions:
    • diguyCharacter::force_action_by_name()
    • diguyCharacter::get_desired_action_name()
    • diguyCharacter::set_desired_action_by_name()
    • diguyCharacter::force_partial_path_by_name()
    • diguyCharacter::force_path_by_name()
    • diguyCharacter::push_path_by_name()
    • diguyCharacter::set_parent_by_name()
  • Removed deprecated diguySensorRegion function diguySensorRegion::contains_character_by_name().
  • Removed deprecated diguySignal function diguySignal::play_sound().
  • Removed deprecated diguyScenario function diguyScenario::find_or_create_face_expression().

Version 6.0.0

Version 5.3.5

  • Fixed problem with .flt loader not dealing well with .flt files that contain multiple nodes that have the same name. The .flt loader now more vigorously checks for name collisions.
  • Removed one unused level of Motion LODs. The unused LOD 6 was not mentioned in documentation nor was it used in motion generation code. This change requires use of DI-Guy Data 5.3.5.
  • Worked on diguyCharacterGesture API:
  • Worked on diguyCharacterGesture documentation. Added more which functions can be called for which gesture types.
  • Added type diguyCharacterGestureType and corresponding function diguyCharacterGesture::get_type().
  • New experimental shooting functionality:
    • Added callback diguyCharacter::CALLBACK_ID_GOT_SHOT.
    • Added callback diguyCharacter::CALLBACK_ID_SHOT_SUCCESS.
    • Added new find all hits functionality.
    • Added new diguyShot class accessible from scripts, records who got shot and where.
    • Characters can now shoot multiple targets; added max_shot_hits to control the maximum number of shots to report. By default scene objects stop bullets.
    • Weapon spread shots test against the octtree first (speed up).
  • Fixed some bugs with review data.
  • Experimental plugin infrastructure:
    • Added functions diguyScenario::add_plugin() and diguyScenario::remove_plugin().
    • The following functions can be exported from the dll to plug into DI-Guy code:
      • void initialize(diguyScenario* s)
      • void deinitialize(diguyScenario* s)
      • void pre_draw(diguyScenario* s)
      • void post_draw(diguyScenario* s)
      • void update(diguyScenario* s)
      • void reset(diguyScenario* s)
      • void save_review_data(const char* filename)
      • void load_review_data(const char* filename)
    • See Documentation for more information.

Version 5.3.4

  • Added new callbacks for use with the diguyCharacter::add_callback() function:
    • CALLBACK_ID_CURRENT_APPEARANCE_CHANGED
    • CALLBACK_ID_CURRENT_HEAD_APPEARANCE_CHANGED
  • Added new gesture type: table gestures. Table gestures are much like character action tables, and allow a single gesture to employ many different motions.

Version 5.3.3

Version 5.3.2

Version 5.3.1

  • Added support for "live reckoning". Live reckoning provides more accurate display of the behavior of remote characters, using less networking bandwidth.
  • Added network support for multiple concurrent scenario instances. Characters in all scenarios are published to the network. Incoming entities are created in the scenario which is passed to diguy_dis_go_online() or diguy_hla_go_online().
  • Improved behavior of reflected entities when the local scenario is reset.
  • Removed some options from network.cfg. It is recommended that the current network.cfg be deleted and let DI-Guy recreate it.
  • Improved behavior of reflected entities when the remote scenario is paused. Now they can move to their correct location even when paused, rather than staying still in a location that is suboptimal.
  • Fixed bug preventing incoming (reflected) non-soldier characters from walking when DI-Guy custom action information is not available.
  • Removed Review Data dt data member from diguyScenario objects and from the DI-Guy Scenario UI. Any scenario review data is now recorded at the scenario's tick dt.
  • Added access to the DirectX 9 world stack used by DI-Guy through the new function diguy_dx9_get_world_stack(). This allows users of DI-Guy for DirectX 9 to offset the origin used by characters from 0,0,0. Use of the new function is demonstrated in the example program $DIGUY/programming_examples/diguy_dx9/offset_example.
  • Made it possible to set the tick dt of a scenario using the function diguyScenario::set_tick_dt(). This was previously possible only in the DI-Guy Scenario UI.
  • Made it possible to turn off review data generation for scenarios. By default, scenarios created in the DI-Guy Scenario editor will have review data enabled; scenarios created using the DI-Guy API will have review data disabled. Turning on review data can add significantly to memory usage. Changing review data settings can be done using the function diguyScenario::set_history_type().
  • Turned off review data by default for characters created using the DI-Guy API. The significantly reduces the memory overhead of each character. Review data can be re-enabled using the function diguyCharacter::set_history_type().
  • Added new callbacks for use with the diguyCharacter::add_callback() function:
    • CALLBACK_ID_PRE_DIE
    • CALLBACK_ID_POST_DIE
    • CALLBACK_ID_PRE_FIRE_WEAPON
    • CALLBACK_ID_POST_FIRE_WEAPON
  • Fixed problem with setting character's current appearance too soon after the character was created. This caused a crash.

Version 5.2.2

  • New function diguyCharacter::set_weapon_fires_live_rounds() sets whether firing causes collision search for characters to be killed. Default is to fire blanks. Old scenarios that used this functionality need to call this function to re-enable firing to kill other characters.
  • Fixed problem for expressive faces in Vega. If a model without texture or material was drawn just before the expressive face, the expressive face would inherit its color.
  • Fixed various memory leaks.

Version 5.2.1

  • Improved DIS/HLA Networking:
    • Motion behavior improved when receiving standard PDUs in DIS.
    • Motion behavior improved when not using DI-Guy Custom FOM in HLA.
  • Improved vpNet/DI-Guy for Vega Prime interaction:
    • DI-Guy for Vega Prime now shares the network connection created by vpNet (MaK Technologies networking add-on to MultiGen-Paradigm's Vega Prime product).
    • Special programming no longer required to have DI-Guy for Vega Prime/vpNet work together.
    • Users need to maintain two separate modelmaps, but mapping to NULL is now implemented for both vpNet and DI-Guy, so that entities being drawn by other modules in Vega will not be drawn a second time by DI-Guy for Vega Prime and vice-versa.
    • Programming examples have been expanded to show simple examples of vpNet/DI-Guy for Vega Prime interaction. Note that these programming examples are copied to the samples directory of the Vega Prime installation.
    • Added function call diguy_net_get_character_from_id() which returns the diguyCharacter associated with the entity id. Works with both DIS and HLA. (see ref. manual).
    • Added option hla_advisories to network.cfg. When using HLA, if the RTI uses advisories, hla_advisories should be set to 1. If not, set this to zero. Mismatch between the settings should be avoided.
  • Fixed problem for expressive faces in Vega. The normals on the head were being scaled incorrectly, causing strange shading artifacts.
  • Fixed problem for expressive faces in Vega. If more than one expressive face was in a scene, all expressive faces would use the texture of the first expressive face.

Version 5.2.0

  • Added dynamic (dll) versions of DI-Guy libraries for win32.
  • Discontinued support of MT and MTd versions of DI-Guy libraries for win32.
  • Fixed nmake-based makefiles for win32 programming examples so that they'll work if DI-Guy is installed in a directory with spaces.

Version 5.1.25

  • Initial release of version 5.1.

Versions 5.1.0 - 5.1.24

  • These versions are 5.1 pre-releases.

DI-Guy Scenario Version 9 and earlier

Note that most changes to the DI-Guy API also apply to DI-Guy Scenario.

Version 9.0

Version 9.1.4

  • Scenario can now be stopped, run, and reset in I-Guy Input Mode by hitting Shift-Space (toggle stop and run) an Shift-Ctrl-Space (reset). Keyboard reset can be disabled in I-Guy mode in the I-Guy Page.

Version 9.1.0

  • Large rework of Object pages. There is now one Scenario Objects page that contains all of the pages from previous versions' Scenario Elements, Character Elements, View Settings, Event Handlers, and DI-Guy AI Elements. Pages are separated into multiple tab groups.

Version 9.0.2

  • Fixed bug where network page wouldn't remember current coordinate converter settings when closed and reopened.

Version 9.0.0

  • Near and far parameters of character weapon parameters are now always enabled, and will alway be taken into consideration. Before they only had an effect if the "spread" of a weapon was greater than 0.
  • New command line flag added: -runtime_only. If this flag is specified, DI-Guy Scenario will not attempt to check out the development license feature but instead will remain in runtime mode, leaving the development license available to another program.

Version 8.0

Version 8.6.3

  • Changing a character's character type no longer deletes all action beads. The actions of the existing beads are changed to the nearest equivalent of the new character type.
  • Region/crowd painting now works on scene object grids. delayed loading of grids should be more responsive as well.
  • Fixed issues with feelers: changes made via UI now change all crowd members, 3D rep of feelers now updated immediately when changed and on reset.
  • Fixed set_playback_mode_play() so that it works in decisions.
  • Ctrl-a will now restore previous visibility settings if hit 2 times in a row.
  • Added experimental feeler callback option.
  • Minor UI preference bug fixes.

Version 8.6.2

  • Improved speed of particle system rendering.
  • Fixes to scene object grid rendering.
  • Fixed problem that character initial path could not be deleted.
  • If last character path is deleted, initial position and orientation controls now become enabled as they should.
  • Added preference for changing the fast-forward playback factor. Default is 4. Can be changed in the Preferences dialog.
  • Symbolic View: Characters merging into a crowd symbol should now work outside of ortho_xy view.
  • 3d UI: Added right click pop-up menu to character mode.
  • Added smoothing to ground clamp function.

Version 8.6.1

  • Added one click movie creation to DI-Guy Scenario.
  • More of the UI has up/down sorting arrows.
  • Added is_speaking as a decision bead query.
  • Fixed bug with "this_character" not properly having sub-objects listed in decision beads.
  • Added the ability for labels to reflect character state, accessible in the character label UI.
  • Fixed math issues with scene object sub-culling, feature should be significantly more robust with scaled and rotated scene objects.
  • Character's added to dynamic octtree and scene object characters should require less memory, and be more efficient.
  • Minor improvements to advanced light UI.
  • Action bead page now lists the current action's information.
  • Fixed bug where 1st person I-Guy could not be killed.
  • Better performance when populating or repopulating crowds.

Version 8.5.0

  • Initial DI-Guy SAF release.
  • Added new SAF Elements palette that provides access to DI-Guy SAF objects.
  • Added shortcut ctrl-a: turns off all supplemental visuals, providing better viewing for non-demo scenario run.
  • Added "Ortho XY" Projection Mode to Camera settings. This provides an alternative planview that uses an orthonormal projection rather that a perspective-based one.
  • Added "Symbolic View" checkbox to Camera settings. When this is checked characters will be represented as flat polygons rather than their full animated graphics. This, along with the Ortho XY Projection Mode, provides a good SAF-like view of a scenario.

Version 8.0.3

  • Fixed issue with I-Guy not using a joystick for input, even through the UI says it is enabled.
  • Fixed issue with children's bounding volumes not being factored into culling calculation.
  • User interface polish:
    • Added more context sensitive input mode buttons.
    • Labels identifying what character and path is selected have been replaced with combo boxes, allowing for faster editing of complex scenarios.
    • Fixed various other small UI issues.

Version 8.0.2

  • Fixed issue with sound not playing properly when scenario is fast-forwarded.
  • Fixed issues with jittery camera in I-Guy 3rd person mode.
  • Multisync masters now send and receive characters over the network.

Version 8.0.0

  • Initial 8.0 release candidate.
  • Improved plugin interface so that existing plugin name can be changed instead of just being deleted and a new one created.
  • DI-Guy plugin libraries can now be browsed for in the Plugins page, instead of just typing in the library name.
  • Added limits to the Tick dt parameter in the Performance page. The Tick dt must now be >= 0.01 seconds, and <= 0.1 seconds.

Version 7.0

Version 7.1.19

  • Made improvements to DI-Guys sound system, sounds will now pause along with the scenario and can now be fast forwarded and rewound (to a degree).

Version 7.1.16

  • Added 'Init. Up Vector' combo box to Character page. Allows user to set the up vector that the character will use. Previously this could only be done via script of decision.

Version 7.1.15

  • Added '-safe_mode' flag to command line. Passing this flag on the command line will cause DI-Guy Scenario to start up using default preferences, which may resolve some unexpected issues.

Version 7.1.14

  • Added chain settings to Merge Settings UI.
  • Fixed issues with selecting a different path by clicking on one of its waypoints in Path Edit Input Mode.

Version 7.1.12

  • Review data for new scenarios is now turned off by default.
  • New characters created in DI-Guy scenario now have no review data by default. Characters from existing scenarios will not be affected. Note that this removes the ability to rewind scenarios unless some review data is turned back on.

Version 7.1.11

  • Sounds now stop when a scenario loops or is rewound. Added a 'Stop All Sounds' button to the Scenario palette Sound page, to make it easier to stop playing long sounds.
  • Window menu now always opens UI windows instead of toggling whether they are shown or hidden. If a window is already open, it is brought to the top of the window stack.
  • The F-key shortcuts for opening UI windows have changed behavior. Pressing F2 for the Time Control window, for example, will make the Time Control window visible by either opening it or bringing it to the top. Old behavior toggled whether windows were shown or hidden. Use Shift-F-key to use old toggle behavior (hide if showing, show if hidden).
  • Character Labels Visibility is now set to 'None' in the default .dss file.

Version 7.1.8

  • Fixed problem with restoring all event mappings when reloading a previously saved scenario.

Version 7.1.7

  • Switch to new installer setup. Should better detect and remove previous versions, and in general be more stable.
  • Added preliminary support for TerraPage .txp files in scene objects.
  • Fixed issue with OpenAL not being able to play sounds on some machines.

Version 7.1.6

  • Added 3rd Parameter to Decision Beads.
  • Added diguyCharacter::create_and_force_bridge_spath() and diguyCharacter::force_local_path to Decision Beads editor.
  • Application now asks user to confirm whether an existing file can be overwritten when Save As is selected.
  • Added Comment field to Decisions and Decision Beads.
  • Added new cursor to represent current input mode.
  • Added events page to character as well as signal and sensor region. Same basic functionality as the event mapper but more distributed UI design.

Version 7.1.4

  • Added functionality to the character elements page that allows character list to be reordered using up and down arrows next to the list box.
  • Character list box will now display disabled characters in gray.

Version 7.1.3

  • Added offset XYZ line edits for aiming at characters on Aim Bead page.

Version 7.1.2

  • Added new "Character" Input Mode. While in this mode clicks and drags will have the following effects:
Parameters
clickand drag translate character
shiftclick and drag - rotate character
  • Made 'Delete' key work on more object types in the 3D window, depending on the current Input Mode:
Parameters
Characteror PeopleBlitzer delete current character
PathEdit or Path Insert delete current waypoint
ActionEdit or Action Insert delete current action bead
SensorEdit or Sensor Insert delete current sensor region
Groupdelete current group

Version 7.1.1

  • Added new "Group" Input Mode. While in the mode clicks and drags will have the following effects:
Parameters
clickand drag translate all group characters
shiftclick and drag - rotate all group characters
ctrlclick - add or remove clicked character to group
  • Added Chain Sim Settings page to the Scenario Elements palette.
  • Added edit boxes to event beads (Aim, Decision, Gaze, and Script beads) that allow beginning and end of beads to be tied to specific waypoints or action beads.
  • Added ability to set character label colors on the Character page.
  • Added optional labels for action beads in the 3D window that show the action name and the time at which the action begins.
  • Current selected character index is now saved in .dss file and restored when the scenario is loaded.
  • Revamped Plugins page. Each plugin now has these parameters:
Parameters
RequiredBy Scenario If checked, this plugin is required for proper execution of this scenario. When the scenario is loaded this plugin will be loaded as well if it is not already active. Default is unchecked.
Unloadon Scenario Close If checked, this plugin will be unloaded if this scenario is closed or a new scenario is opened. Default is unchecked.
AcceptsMouse Input If checked, this plugin will receive mouse events via the mouse plugin functions when the input mode is "Plugin". Default is checked.

Version 7.1.0

  • Revamped Cut and Paste operations to use the merge functionality that makes sure objects added to a scenario have unique names.

Version 7.0.8

  • Camera speed UI input was broken, should be responsive again
  • Hitting cancel in particle system texture map property widget will no longer delete the currently selected texture.
  • Fixed Camera Affected by Script events check box; was actually an SDK fix.

Version 7.0.5

  • Enhanced character path following so that waypoints that have a roll parameter specified will roll the character as it travels along the path.
  • Enhanced character path following so that characters can now pitch "upside-down" along paths.

Version 7.0.3

  • Look At button now works for reflected characters.

Version 7.0.1

  • Velocity Noise on particles will now get transformed with the parent's orientation.
  • Fixed problems with various guide algorithms not working well if the desired z coordinate is not at the same altitude as the character.
  • Re-enabled "-C cfg_file" command line flag.

Version 6.0

Version 6.1.10

  • Fixed problem that prevented some parameters from being editable in the Decision editor; in particular, when param 2 was an appearance or a string.
  • Fixed aim trajectory rendering to more consistently render and use the proper color.
  • Fixed problem with I-Guy characters not being able to move forward and back.
  • Particles are more aggressive about requesting that octtree is rebuilt.
  • High velocity particles, stuck particles and bouncing particles all interact better after colliding with scene geometry.
  • BDI_LOG_FATAL errors will behave better in DI-Scenario, giving the option to save before exiting.
  • Fixed decision beads pseudocode description crash.

Version 6.1.9

  • Fixed problem with OpenGL renderer that prevented objects with subfaces from rendering correctly.
  • Fixed problem with Draw Mode radio buttons in the Preferences dialog not having the correct effect on rendering.
  • Changed info popups to show up as dialog windows separate from the main window. This prevents the Primary 3D Window from un-maximizing when an info popup pops up.
  • Fixed problem that scene objects did not correctly look in custom directory for models.
  • Added code to check positions of DI-Guy Scenario windows; if windows will not be visible (are off-screen, etc.), they are moved to screen coordinate 0,0.
  • Updated Networking Settings page to be consistent with V6 UI.
  • Numerous fixes to Networking Settings page.
  • Added About box with version information.
  • Fixed bug that preferences weren't correctly saved if app was closed by clicking 'X' button in upper right corner.
  • Fixed various problems with values entered into edit boxes being clobbered.
  • Added plugins page to DI-Guy Scenario to match page from V6 UI.

Version 6.1.8

  • Fixed world space collisions for particles, functionality was temporally broken.
  • Particle UI should be now be almost entirely working in DI-Guy Scenario.
    • Added load particle descriptions button to UI.
    • Added collision plane rendering check box to UI.
    • Added check box to particle page that optionally turns off placeholders.
    • Added orientation flag to particles, useful for parented emitters.
    • Renaming particles should validate names and echo to other appearance menus.
    • Adding or removing particle descriptions now properly updates the appearance section of the character page and people blitzer.
    • Particle manager was getting updated unnecessarily causing particles to playback 2x as fast.
  • Fixed a focus out problem that yielded a hard lock up if a load manager error message was produced.
  • Waypoints and sensor regions visuals weren't being properly updated when data changed.
  • Editing a Scene object triggers the unsaved flag more often.
  • Fixed a glitch where shadows and the profiler wouldn't work together.
  • Added UI for setting character and scene object culling active.
  • Added UI for setting character and scene object bounding volume visualization active.

Version 6.1.7

  • Added UI for setting the character's label text and controlling whether the label is visible to the Character page.
  • Added new visibility option for Character Labels on the Visibility page: Per Object.
  • Major reworking of the DI-Guy Scenario user interface in preparation for the DI-Guy 7 release. A version of the program with the old interface (henceforth called the V6 UI) will be available in releases for awhile with a different filename. As time goes on new features that appear in DI-Guy Scenario may not appear in the V6 UI.
  • Changed the sound module of DI-Guy Scenario to be based on OpenAL. This fixed a problem with sounds playing back too fast on certain systems, and allows for 3D position sounds.

Version 6.1.6

  • Added "+plugin <plugin_name>" command line argument. This will load the specified plugin as the application is starting up. This is essentially the same as calling diguyApp::load_plugin() before the initial scenario is created.
  • Added "Plugin" page. This allows a scenario designer to specify which plugins are required for proper execution of the scenario.
  • Fixed crash bug that occasionally occurred when the "Trigger Now" button was clicked on the Script and Decision pages.
  • Added UTM Coordinates to the Networking page.
  • Added "Decisions", which are similar to Script Events but have a UI for constructing logic similar to Decision Beads.

Version 6.1.4

  • Fixed minor problems with decision bead page. The parameters for the sensor region function contains_character_by_type_and_appearance() did not include quotes and were not alphabetized.
  • Added buttons "Add All" and "Remove All" to Group page.

Version 6.1.1

  • Added Load Manager page to the Scenario window. Now users can enable load management, and adjust load management parameters from within DI-Guy Scenario.
  • Particle warm up time should now work properly on reset.
  • Added particle system life time, after which it will no longer emit particles.
  • Added new Particle position and velocity noise options, should allow for better control and movement options.
  • Added character variable querying to decision beads, can now query variables with: variable_equal_to_(float, int, string), variable_less_than_(float, int, string) and variable_greater_than_(float, int, string).
  • Added character variable actions to decision beads, can now have actions that affect variables, using variable_set_value_as_(float, int, string) and variable_increment and decrement. string) and variable_greater_than_(float, int, string).
  • Can now use decision beads to check whether someone's been shot, as well as where the shot hit.
  • Changed how decision beads get pointers to objects; previously if an object was referenced multiple times in a decision bead (e.g., multiple queries were made of character "soldier-1" in the if clauses), the same object was searched for multiple times. Now a pointer to the object is just searched for once.
  • Added Variable page to Character window. This page allows for creation, deletion, and editing of character variables. Character variables are almost exactly the same as scenario variables, but are private to each character instead of being shared across the entire scenario.

Version 6.1.0

  • Ctrl-'u' now pushes a scenario undo onto the undo stack.
  • Space bar toggles between play and pause; Ctrl-space bar does a reset.

Version 6.0.8

  • DI-Guy Scenario now properly sets the network Force ID for outgoing entities based on group membership. Groups net_friendly, net_opposing, and net_neutral should be used to indicate the Force ID of outgoing entities.
  • DI-Guy Scenario now assigns incoming entities to group net_friendly, net_opposing, or net_neutral based on the incoming Force ID.
  • Incoming entities cannot now be assigned to or removed from groups. As well, groups to which incoming entities belong cannot be deleted.

Version 6.0.2

  • Fixed problem with "Deflate" compression method for movie frame capture.
  • Changed label of "Reset" button on Movie Settings page to "Reset Next Frame Number", to differentiate it from the Reset button on the Control palette.

Version 6.0.1

  • Added setting of Scenario Review Data on Scenario Performance page to .dss file. It was not being saved and restored as scenarios were saved and loaded.
  • Changed scenario "Loop" functionality. If no characters have review data, the scenario will reset and play rather than rewind and show review data.
  • Removed unused "Altitude" edit box from Networking property page. (PR 3002)
  • Changed gaze bead logic so that faster gazes are possible. The desired locate time for gaze beads was effectively limiting the maximum angular velocity. Now if a gaze bead overrides gaze parameters, it also turns off use of the desired locate time for each link. (PR 3030)

Version 6.0.0

  • Added "GoThere" camera movement. In Camera mode, if there is neither a Look At character nor a Look From character selected and the camera projection mode is "free camera", if you hold the Shift key and left-click on anything in the scene, the camera will rapidly travel to what you Shift+clicked on and turn around to face the location from which the camera came. This also works from modes other than camera mode, if you press and hold Alt+Shift while left-clicking.
  • Changed Aim Bead UI to match Gaze Bead UI. Note that now aiming is also precise, and dynamic. See DI-Guy aiming change above.
  • Fixed problem with current light and fog settings being overwritten when a .dss file was loaded. (PR 2019)
  • Fixed problem with primary view of scenario returning 0 when diguyScenarioView::is_showing() was called on it. The correct value is now returned. (PR 2954)
  • Added ability to change window title of primary view using the call diguyView::set_window_title(). (PR 2953)
  • Fixed problem with looking at scene objects that are translated away from the origin. (PR 2722)
  • Fixed problem for character paths on load. Paths that weren't the initial path of the character weren't being fully initialized until they were used by the character. Now all paths receive an initial update call on load. (PR 2791)
  • Added new command line argument: -no_info_popup_server. Adding this argument to the command line causes DI-Guy Scenario to not attempt to start the program DIGuyInfoPopupServer. If the server is not started, info popup windows will not appear.
  • Fixed problem that if the Initial Script Filename on the Script Event property page specified a script that didn't exist, no warning was given. Now a log message at Warn level is printed for a missing script file. (PR 2826)
  • Fixed problem that prevented Performance settings from taking effect unless the scenario was saved and reloaded.
  • Added edit box for setting character's initial motion texture gain. (PR 2845)
  • Added UI preference for turning off the "DI-Guy Scenario by Boston Dynamics" overlay.

Version 5.0

Version 5.3.5

  • Changed edit box for setting character's initial motion texture into a combo box that shows which motion textures are available.

Version 5.3.2

  • Small improvement to particle system UI, fixed outstanding issues with texture map browser widget. Color Widgets go right to a color picker. Clicking on static text opens subitems.
  • Particle Systems now populate better between ticks, i.e. release intervals smaller then the update time now work.
  • Performance improvements to the particle systems.

Version 5.3.1

  • Removed Review Data dt data member from diguyScenario objects and from the DI-Guy Scenario UI. Any scenario review data is now recorded at the scenario's tick dt.
  • Split Visibility / Performance page into two separate pages named Visibility and Performance.

Version 5.3.0

  • Made it possible to turn off review data generation for scenarios. By default, scenarios created in the DI-Guy Scenario editor will have review data enabled; scenarios created using the DI-Guy API will have review data disabled. Turning on review data can add significantly to memory usage. Changing review data settings can be done using the function diguyScenario::set_history_type(), or using the Review Data Type radio buttons on the Visibility / Performance page of the DI-Guy Scenario editor.

Version 5.2.3

  • Added joystick gain settings to Preferences. The gains allow DI-Guy Scenario users to adjust how sensitive the joystick will be. Gains of 1.0 retain previous behaviors. Gains less than 1.0 make joystick control less sensitive; i.e., it will take a larger movement to achieve a response. Gains more than 1.0 make joystick control more sensitive; i.e., it will take a smaller movement to achieve a response.

Version 5.2.1

  • Special Effects: DI-Guy Scenario now offers a new add-on option for particle-based special effects. Examples of particle effects include smoke, fire, debris, missile trails, rotor wash, explosions, and dust trails. A Particles tab is now available in the Scenario palette for easy control of effects parameters include size, number, color, texture map, velocity, wind effect, and gravity.
  • Fixed crashing bug when undoing path changes.
  • Fixed minor issues with using soldier character backward actions and companion waypoints.
  • Fixed problem where character sounds were not consistently playing when a scenario looped.
  • Fixed problem where path shapes were not always being drawn when they should have been.
  • Fixed problem where having path shapes in a scenario caused the program to crash on exit.
  • Fixed crashing bug when shutting down a scenario that contains characters with guides.

Version 5.2.0

  • Added ability to show character names as floating labels next to the character in the 3D window. Name labels can be shown for current character only, all characters, or no characters. Access via the Scenario | Visibility / Performance property page.
  • Added "Look At" buttons for characters, waypoints, and path beads on respective Elements pages.
  • Added special effects such as smoke and fire.
  • Fixed perl script interpreter so that it will work if DI-Guy is installed in a directory with spaces.
  • Fixed problem where LOD range scale factors weren't taking effect for scene objects.

DI-Guy AI 9.0 and earlier

Version 9.0.x

Version 9.0.1

  • Fixed bug where characters were improperly going through walls.
  • Fixed a number of minor crashes with creating behavior paths.

Version 9.0.0

  • To enable DI-Guy AI in programs using the DI-Guy SDK, the header file "diguy_ai.h" must be included, and the functions diguy_ai_initialize() and diguy_ai_deinitialize() must be called at the appropriate times.
  • New command line flag added to DI-Guy Scenario for optionally. disabling DI-Guy AI. By default DI-Guy Scenario will look for the diguy_ai license feature and check it out if it is present. By putting "-module diguy_ai" on the command line, DI-Guy Scenario will not attempt to enable DI-Guy AI.
  • Fixed problem with DI-Guy AI agents having trouble killing animals.
  • Painting a non-continuous region will be more likely to successfully create a behavior path, the longest path from the start point to the mouse up location is used.
  • Fixed issues with feelers: changes made via UI now change all crowd members, 3D rep of feelers now updated immediately when changed and on reset.
  • Fixed problem that agent feeler collide distance could not be greater than turn distance.
  • It is now possible to add a feeler callback to enable DI-Guy AI agents to interact better with static geometry in the SDK. See the following functions for more details:
  • Crowds and agents can now flee a group. Accessed via:

Version 8.6.3

  • Crowd UI Improvements:
    • Selected member will now only show postures and variants that it has available.
    • Selected edit mode with display better visual cues indicating which crowd members will be affected by changes
    • Added look at member button.
  • Crowd Blitzing: Blitzing a crowd into an area that is non-contiguous will now attempt to find the longest path from the start point to the end point, This should fix a frequent failure case with the Blitzer.

Version 8.6.1

  • DI-Guy SAF references changed to DI-Guy AI.

Version 8.6.0

Version 8.5.0

DI-Guy Motion Editor 9.0 and earlier

Version 9.0.x

Version 9.0.1

  • Added sample bvh file to motions directory, should help document how DI-Guy expects bvh files to be structured.

Version 9.0.0

  • If motions are added to an action table, the proper default actor is now set automatically.
  • Improved support for editing offset poses, should be much easier, and not cause abrupt joint behavior.
  • Changing the actor of a motion arc now immediately applies the new scale to the motion, improvements to actor choosing, motion scaling, and importing code.
  • Fixed a number of action table editing issues: including hard crash with undo, "remove unused motions" causing corrupted action tables.
  • General UI improvements:
    • +/- keys behave more intuitively with regards to the yaw/pitch/roll of the poser.
    • Shift key alters magnitude of +/- change.
    • Poser editing gizmo now auto-scales based on camera distance.
    • Editing mode is now displayed in 3D window title bar.
    • Initial directories for me project, importing motions and saving motions are now set to expected values.

Version 8.6.3

  • Fixed issue with zero length animations causing div by zero.
  • Fixed minor bug with action tables not properly updating when unused motions were removed.

Version 7.1.11

  • Fixed problem that many error messages would appear when saving action tables.

Version 7.1.0

  • Fixed various problems with setting variants and angle extents for 2-axis motions in the Action Table Editor.
  • Added sliders for testing aim actions in the Action Table Editor.

Version 6.1.9

  • Fixed a number of bugs introduced with the upgrade to high precision positions.

6.1.0

  • Added new gesture table editor, allows for the modification of the action tables of table gestures.
  • Null motion arcs are now editable, with blend type and duration as parameters.

Version 6.0.6

  • BVH file import now supports joint translations in addition to rotations.
  • Resultant BDM files contain only relevant variables.

Version 6.0.0

  • Initial 6.0 DI-Guy Motion Editor release.

DI-Guy Character Viewer 9.0 and earlier

Version 8.0.x

Version 8.0.2

  • Added view selection buttons that load new camera settings.

Version 6.1.9

  • Fixed a number of bugs introduced with the upgrade to high precision positions.
  • Fixed character transparency.
  • Fixed selecting the default appearance.

Version 6.0.x

Version 6.0.2

  • Added default settings file that shows Character Type / Appearance / Action selection page.

Version 6.0.1

  • Fixed problem where appearances that used a different actor than the default actor for a character did not correctly display.

Version 6.0.0

  • DI-Guy Character Viewer added to DI-Guy Applications Suite. Allows quick review of character types, appearances, and actions.

DI-Guy for Vega Prime Version 5.2 - 9.0

Version 9.0

Version 9.0.3

  • vpNet 2.2 should now be enabled.
  • Fixed issue with skyLight lighting and shaders not being properly applied.
  • Fixed Memory leak when characters were unrefed to zero. Note a slight change to the basics example.

Version 9.0.1

  • Fixed issue with new vpDiguys not having their locations properly set when reading out of an acf.
  • Fixed issue with vpDiguyCharacters parented to vpTransforms not being properly created.

Version 9.0.0

  • DI-Guy for Vega Prime now works with VP 2.2.

Version 8.0

Version 8.6.3

  • Fixed crash on exit when a vpDiguyCharacter parent was not a scenario.
  • Fixed bug where characters would multiply render if they were parented to a vpObject
  • parented and translated characters will should start broadcasting over the network with proper values.

Version 8.0.3

  • Moved example_acfs to their own subdirectory instead of in simple_playback directory.
  • Added warning about setting channel LOD scale to zero, can cause character to not draw.
  • Fixed an issue where not having a valid license could cause vp applications to crash.
  • Fixed licensing issue effecting vpDiguy/vpNet/HLA/stealth.
  • Basics Programming example now demonstrates ground clamping. As well as some other polish to programming examples.

Version 8.0.2

  • Improved reporting of version information during installation.

Version 8.0.0

  • Initial 8.0 release candidate.
  • vpDiguy using vpNet should now support all coordinate conversion routines that vpNet supports.
  • Memory usage and rendering performance improvements.

Version 7.0

Version 7.0.8

  • Fixed HLA networking licensing issue. Shouldn't need explicit hla license with vpNet.
  • Added new autogenerated vpDiguy SDK docs.
  • Added code to basics example that demonstrates creating a character after configure.
  • Added documentation about vpDiguy openAL audio module's incompatibility with vpAudio module.
  • Added static versions of vpDiguy libraries, updated autolinking code in vpDiguyCpp.cpp.

Version 7.0.7

  • Fixed a number of vpNet related bugs.
  • NOTE: In order to make vpNet interaction more solid reading of UTM coordinates out of Scenario Objects in vpDiguy has been disabled. UTM coordinates should be specified explicitly in the Net Connection gcf panel and the DI-Guy Scenario Network Page.

Version 7.0.6

  • Fixed a number of recreation/looping related bugs.

Version 7.0.3

  • Turned on vpNet/vpDiguy networking.
  • Updated all the acfs to be vp 2.0 compliant.
  • Updated vpDiguy gcf to include new 7.0 content.
  • Fixed bug in UTM support.
  • Fixed problem if multiple diguy particles attempt to instantiate the same type of vpFX. Fixed memory leak as well.
  • Fixed divide by zero bug in networking code, could cause 0th character to never show up.
  • Fixed bug where a character with an appearance change would not be recreated properly if a scenario was looping.

Version 7.0.0

  • Fixed a couple of vpDiguyScenario function calls to print a warning if the functions are called before configure, instead of crashing.
  • diguyCharacter's position syncs with vpDiguyCharacter on creation.
  • Distributed rendering should now support mapping from DI-Guy particles.

Version 6.0

Version 6.1.11

  • Consolidated networking examples, moved vpnet_(send/receive)_(dis/hla).acf into simple_playback because they didn't have unique c++ code.
  • Added postLoad function to vpDiguyCharacter building code to try and enable sensor prime.
  • Added vpDiguyScenario::set_time_independant_of_vp_sim_time() and vpDiguyScenario::get_time_independant_of_vp_sim_time() Allows time to be disconnected from sim time.

Version 6.1.10

  • Renamed vpDiguyScenario::SetSyncCameraEnable() to vpDiguyScenario::setSyncCameraEnable().

Version 6.1.9

  • Added per scenario time offset code.

Version 6.1.8

  • Code now compiles against Vega 2.0 libraries:
  • Added 2.0 style copy constructor for diguyCharacters to use in cloning.
  • Fixed a bug where locked off joints issued warnings.
  • Fixed a bug where some dynamic matrixes weren't being properly updating, fixes gazing inside Vega.
  • Altered how diguyScenarios get loaded to accommodate new merging code.
  • Unsupported Vega sound module now uses openAL.

Version 6.1.1

  • gcfs and xsd no longer use "DI-Guy" in the naming convention; instead "Diguy" is now used. This avoids uncompilable code generated from lynxPrime's export .cpp functionality, as well as being more consistent with Vega conventions.

Version 6.0.8

  • Fixed serious bug affecting HLA networking in DI-Guy for Vega Prime. This bug was causing various problems, ranging from missing or extra apparent network entities, to entities appearing at the wrong location.

Version 6.0.7

  • Changed all Vega Prime code/acfs that specify "DI-Guy" to "Diguy". This should allow cpp exports to work better.
  • Renamed vpDiguy.h/cpp to vpDiguySettings to better match acf info.
  • Added Vega Prime view settings example that shows off camera sync code.
  • Added Vega Prime simple example that shows how to initialize and run with no acf or dss.

Version 6.0.6

  • Fixed problem which inadvertently disabled standard Vega Prime "X" key functionality (enable / disable the position strategy for all observers) in a vpDiguy application.

Version 6.0.5

  • Fixed problems preventing DI-Guy for Vega Prime from working with DIS/HLA for Vega Prime. DI-Guy for Vega Prime now works with Vega Prime 1.2.2 from MultiGen Paradigm and vpNet 1.2.2 from MAK Technologies. Prior versions of vpNet are not supported.

Version 6.0.2

  • Switched bdiString to bdiString* in vpDiguyCharacter.h, to remove a dependency on a header file that is not distributed.

Version 6.0.1

  • Fixed problem in vpDiguy DIS networking. Outgoing entities were being published with entity numbers which conflicted with those being used by Vega Prime entities. On the receiving end, this would cause characters to pop from place to place.

Version 5.0

Version 5.3.4

  • Added a circle example program to programming_examples/vpdiguy.

Version 5.3.3

  • DI-Guy characters types are now listed in a Character Type combo box.
  • A character type sensitive list of appearances are now listed in an Appearance combo box.
  • A character type sensitive list of actions are now listed in an Action combo box.
  • A character type sensitive list of head appearances are now listed in a Head Appearance combo box.
  • Altering the xyz position, heading or scale factor of a character now reflects on the character immediately.
  • Adding a ground clamp to a DI-Guy Scenario node now adds the ground clamp to all of its children that don't currently have a ground clamp.
  • Added new DI-Guy Settings functionality, including turning on/off scripting, sound effects, facial expressions, and the mapping of DI-Guy particles to Vega particles.
  • Added new options to DI-Guy Scenario panel.
  • Added toggle for showing scene objects found in the scenario file.
  • Added Sync Camera option that will slave the observer/motion controls to the DI-Guy camera.
  • Adding a DI-Guy character directly to a scene now creates one without a scenario being necessary.
  • DI-Guy characters dropped into a vpNet model map are now correctly cloned. (Requires the latest version of vpNet.)

Version 5.2.1

  • Better integration with MaK's vpNet module (see above).
  • Installation now occurs as a separate module on the DI-Guy CD.
  • Installation now automatically copies samples, documents to the Vega Prime installation as well as registering the DI-Guy for Vega Prime module.

DI-Guy Data, 9.0 and Earlier

Version 9.0

Version 9.0.1

  • Added character soldier_sa80, a British soldier with desert and temperate appearances using a sa80, based on the soldier_07 character. Available appearances:
    • uk_desert_sa80
    • uk_temperate_sa80
  • Added character "projectile" with meters per second motions. Character projectile appearances:
    • rpg_fired
    • sa7_fired
    • stinger_fired
    • javelin_fired
    • 120mm_tank_round_fired
    • at4_fired
    • 40mm_fired
  • Added sound files: m203_hit.wav, fire_m203.wav, arabic_street_sounds.wav sa7_flight.wav, sa7_fired.wav, stinger_fired.wav, stinger_flight.wav, javelin_flight.wav, javelin_impact.wav, at4_fired.wav, at4_flight.wav at4_impact.wav, javelin_fired.wav, pk74_fired.wav, m1a1_fired.wav

Version 9.0.1

  • Some character types have been made deprecated, and made "legacy" character types. If these character types are used in an existing .dss file or are created by a diguyScenario::create_character() call they will be created, but by default they will not show up in any DI-Guy Scenario character type selection controls. The legacy character types are:
    • soldier_m249
    • soldier_m4
    • soldier_qk
    • soldier_signals
    • soldier_fire
    • soldier_pistol
    • soldier_melios
    • afghan_child_crowd
    • male_pedestrian3
    • mped_sweeper
    • mped1_misc
    • mped2_misc
    • mped3_misc
    • mped5_crowd2
    • mped5_crowd3
    • mped5_crowd4
    • mped5_crowd5
    • mped5_crowd6
    • fped2_misc
    • fped3_crowd2
    • suspect3
    • marshaller
    • esil
    • soldier_precise
    • launcher
    • suspect
    • suspect2
    • fped_mother
    • sergeant

Version 8.0

Version 8.0.0

  • New character types:
    • chain_simulation
    • civilian_cc
    • soldier_cc
    • soldier_at4
    • soldier_javelin
    • soldier_m249
    • soldier_m9
    • soldier_m4
    • train
  • New human appearances:
    • 3 Security Guards
    • Hazmat Suits level A B and C
    • Assortment of Hazmat props
    • 10 different Close Combat civilians
    • Close Combat BDU and DCU with M9, M249, M240, M60, AT4, Javelin M4 with M203, M16 with M203 Stinger weapons
    • Close Combat Opfor with SA16, RPG7, AK47 and PK74 weapons
    • 3 Iraqi Insurgents
    • 2 Iraqi Soldier
    • 2 Iraqi Police

      The following soldier appearances can have M9, M249, M240, M60, AT4, Javelin M4 with M203 and M16 with M203 weapons:

    • 4 BDU with IBA
    • 4 ACU with IBA
    • 4 USMC with IBA
    • 4 USMC desert with IBA
  • New turret vehicle and technical vehicle appearances:
    • gaz_truck_w_ZSU23_turret
    • gaz_truck_w_ZSU23_turret_blown
    • toyota_pickup_tech_turret
    • toyota_pickup_tech_turret_blown
    • humvee_50cal_grn_turret
    • humvee_50cal_grn_turret_blown
    • humvee_50cal_des_turret
    • humvee_50cal_des_turret_blown
    • m1a2_abrams_grn_turret
    • m1a2_abrams_grn_turret_blown
    • m1a2_abrams_des_turret
    • m1a2_abrams_des_turret_blown
    • t72_tank_grn_turret
    • t72_tank_grn_turret_blown
    • t72_tank_des_turret
    • t72_tank_des_turret_blown
    • m2a3_bradley_grn_turret
    • m2a3_bradley_grn_turret_blown
    • m2a3_bradley_des_turret
    • m2a3_bradley_des_turret_blown
    • leclerc_tank_descamo_turret
    • leclerc_tank_descamo_turret_blown
    • leclerc_tank_camo_turret
    • leclerc_tank_camo_turret_blown
  • Added Motions to Soldier and Soldier2 characters:
    • stand_ready_8th_turn_left
    • stand_ready_8th_turn_right
    • stand_ready_qtr_turn_left
    • stand_ready_qtr_turn_right
    • stand_aim_extreme
    • kneel_aim_extreme
    • walk_aim
    • walk_aim_back

Version 7.0

Version 7.0.0

  • New character types:
    • chem_bio_pedestrian
    • fdc_chock_and_chains
    • fdc_fuelman
    • fdc_grounding
    • fdc_pallet
    • fdc_pedestrian
    • firefighter
    • fireman_silver
    • vehicle_technical
    • vehicle_turret
    • vehicle_wheels

Version 6.0

Version 6.1.2

  • Vehicles and props now have more accurate bounding volumes.
  • Fixed problem with config file appearance syntax. The item "shapeset:shape" format caused a crash; it now works again.
  • Replaced default scene object (sets/default_stage/default_stage.flt) with new default (sets/default_stage7/flt/default_stage7.flt). The new default_stage7.flt scene object has a number of different areas in which example scenarios can be placed.

Version 6.1.1

  • Added new appearance "invisible_human"; Using this appearance for a human character will remove all geometry from the character, effectively making it invisible.

Version 6.1.0

  • Added ability to specify in config files how long a null transition should take, and which blend function it should use.

Version 6.0.2

  • Modified stroll motions of female_pedestrian character to move hands further away from body.
  • Fixed some facing issues for soldier-type characters in transition motions between stand_aim and kneel_aim actions.

Version 6.0.1

  • Added particle_puff.rgba to list of effects textures.
  • Fixed the standing hip height of actor greg. It had been mistakenly changed to match that of actor bill. This caused problems for motion scaling for some actor / appearance combinations. (PR 3029)

Version 6.0.0

  • Initial 6.0 DI-Guy Data release.

Version 5.0

Version 5.3.5

  • Removed one unused level of Motion LODs from data loaders config entries. The removed LOD 6 always had 0 variables in it, which wasn't useful for anything. This change requires use of DI-Guy Applications 5.3.5.

Version 5.3.2

  • Changed format of Motion Texture (motex) entries in DI-Guy config files. The new format gives motion textures their own config entry keyword, separate from motion arcs. This allows DI-Guy to know exactly which motions are going to be used as motion textures. Custom motion textures using the old format need to be updated.
  • Changed format of gesture entries in DI-Guy config files. Custom gestures using the old format need to be updated.

Version 5.3.1

  • Fixed problem with airport_crowd character selecting wrong action for default moving action.
  • Added sergeant2 character, which is similar to the sergeant character but better deals with transitions between actions.
  • Added fped_mother2 character, which is similar to the fped_mother character but better deals with transitions between actions.

Version 5.2.2

  • Running motion has been improved for the following characters: afghan_fighter, cbd, soldier, soldier2, soldier_precise, soldier_qk. Scenarios from previous revisions using these motions may behave slightly differently.