DI-Guy SDK Documentation
13.7.1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
diguy_changes_older_dox.h
Go to the documentation of this file.
1
2
/*****************************************************************************/
519
/*****************************************************************************
520
*****************************************************************************
521
**
522
** \section v9apps DI-Guy 9.0 and Earlier
523
**
524
*****************************************************************************
525
*****************************************************************************
526
**
527
**************************************
528
** \subsection v9diguyapi DI-Guy API
529
**************************************
530
**
531
*b Note that most changes to the DI-Guy API also apply to DI-Guy Scenario.
532
**
533
** \subsubsection v904api Version 9.0.4
534
**
535
*- - Added new argument to diguyCharacter::force_action() that allows
536
*- the forced action to begin partway into the action.
537
*- - Added the following functions to diguyCharacter API:
538
*>
539
*- - diguyCharacter::get_most_recent_forced_action()
540
*- - diguyCharacter::get_most_recent_forced_action_t()
541
*- - diguyCharacter::get_most_recent_forced_action_t_offset()
542
*<
543
** \subsubsection v901api Version 9.0.1
544
**
545
*- - Added new guide example, see $DIGUY/programming_examples/diguy_ogl/guide_example
546
*- - Added the following functions to diguyCharacter API:
547
*>
548
*- - diguyCharacter::get_distance_to_impact()
549
*- - diguyCharacter::set_is_scene_object()
550
*- - diguyCharacter::get_is_scene_object()
551
*- - diguyCharacter::set_apply_actor_scale_to_action_bead_xy_travel() deprecated;
552
*- use diguyCharacter::set_apply_actor_scale_to_action_bead_travel() instead
553
*- - diguyCharacter::get_apply_actor_scale_to_action_bead_xy_travel() deprecated;
554
*- use diguyCharacter::get_apply_actor_scale_to_action_bead_travel() instead
555
*<
556
*- - Manually invoking a diguyCharacter perl script callback via
557
*- diguyCharacter::manually_invoke_event_handler() will now have the
558
*- $callback_object variable properly set.
559
*- - Minor munition system improvements:
560
*>
561
*- - Munitions sound effects now include sound gain.
562
*- - Added diguyScenario::trigger_detonation(), a function for
563
*- creating a detonation at an arbitrary xyz location.
564
*- - Fixed bug with location of munition particle effects.
565
*<
566
*- - Added new Munition system demonstration; see AI_Munitions_Demo.dss in
567
*- scenarios directory.
568
*- - Improved default 3d sound behavior; prior default 3d sound falloff
569
*- was much too aggressive. Future DI-Guy releases will make more of
570
*- these values tuneable.
571
**
572
** \subsubsection v900api Version 9.0.0
573
**
574
*- - Promoted the following functions from experimental to
575
*- official status:
576
*>
577
*- - diguyScenario::find_character_at_screen_coords()
578
*- - diguyScenario::get_impact_at_screen_coords()
579
*- - diguyScenario::get_intersection_at_screen_coords()
580
*- - diguyScenario::force_octtree_generation()
581
*- - diguyScenario::intersect_static_geometry()
582
*- - diguyScenario::add_character_to_octtree()
583
*- - diguyScenario::remove_character_from_octtree()
584
*- - diguyCharacter::set_apply_actor_scale_to_action_bead_xy_travel()
585
*- - diguyCharacter::get_apply_actor_scale_to_action_bead_xy_travel()
586
*<
587
*- - Added functions to allow user to specify custom feeler functions:
588
*>
589
*- - diguyScenario::set_default_agent_feeler_function()
590
*- - diguyCharacter::agent_set_feeler_function()
591
*- - diguyCharacter::agent_get_feeler_function()
592
*<
593
*- - Fixed more issues with recent changes to reduce path memory overhead.
594
*- - Changing current appearance will now complain less if the resulting
595
*- change doesn't require recompilation of path data.
596
*- - diguy_dis_constants.h now includes custom PDU enumeration.
597
*- - Changes made to aim algorithm 8 parameter functions in an effort
598
*- to make them more descriptive. Note that only the set functions
599
*- are listed; the corresponding get functions have changed, too.
600
*>
601
*- - diguyCharacter::set_aim_param_time_constant() deprecated;
602
*- use diguyCharacter::set_aim_param_acquire_factor() instead
603
*- - diguyCharacter::set_aim_param_reset_time_constant() deprecated;
604
*- use diguyCharacter::set_aim_param_new_aim_factor() instead
605
*- - diguyCharacter::set_aim_param_time_constant2() deprecated;
606
*- use diguyCharacter::set_aim_param_new_aim_duration() instead
607
*<
608
** \subsubsection v863api Version 8.6.3
609
**
610
*- - Fixed some issues with recent changes to reduce path memory overhead.
611
**
612
** \subsubsection v862api Version 8.6.2
613
**
614
*- - Changes made to support multiple active formations. New arguments
615
*- added to diguyCharacter::call_formation() and
616
*- diguyCharacter::break_formation() to support multiple formations.
617
*- Default behavior remains the same as before.
618
*- - Significant memory savings when dealing with characters with
619
*- long paths.
620
*- - Added new argument to diguyCharacter::set_current_appearance()
621
*- function: allow_actor_change. Previously changes to a character's
622
*- appearance that would result in an actor (size of character) change
623
*- were not allowed. Passing 1 (the default) for this argument now
624
*- allows such a change.
625
**
626
** \subsubsection v861api Version 8.6.1
627
**
628
*- - Added function diguyCharacter::get_current_traveled_path().
629
*- - Improved logic for picking dead action.
630
*- - Removed deprecated functions:
631
*>
632
*- - diguyLoadManager::set_max_update_period()
633
*- - diguyLoadManager::set_nonvisible_update_rate()
634
*- - diguyLoadManager::set_zone_bounds()
635
*- - diguyLoadManager::set_zone_parameters()
636
*<
637
*- - Improved DIS/HLA Networking:
638
*>
639
*- - Added support for Flat Earth and Geocentric coordinates.
640
*- - Coordinate system changes can now be applied while the system is
641
*- connected to the network.
642
*- - DI-Guy characters can now have different Munition types which are
643
*- sent over the network as part of the detonation pdus.
644
*<
645
*- - Improved Munition Support:
646
*>
647
** Heavy rewrite/solidification of our munition and detonation code.
648
*>
649
*- - Characters now have a munition type, defaults to "m16".
650
*- - Munition definitions are stored in the munition_type.cfg file.
651
*- They have a number of required and optional fields including
652
*- septet, radius, and special effects to create when triggered.
653
*- - The munition name and radius is now part of diguyImpact
654
*- structure. This allows the end user to build damage models in
655
*- scripts that are based on the munition type of an impact, along
656
*- with fall-off effects based on distance from impact location.
657
*- - Characters hit by broadcast detonations will now call the
658
*- CALLBACK_ID_IMPACT callback if they have one, this emulates what
659
*- happens when characters are shot by other DI-Guys. If they are
660
*- members of a crowd and the crowd has an impact callback that will
661
*- be called, if no impact callback exists they will die.
662
*- - Crowds should now react to remote detonations.
663
*- - Impacting a scene object will now transmit a detonation.
664
*<
665
*<
666
** \subsubsection v850api Version 8.5.0
667
**
668
*- - Many new function calls available from decisions.
669
*- - Changed default aim algorithm from 7 to 8. To change it back to 7,
670
*- call diguyCharacter::set_aim_algorithm(), passing 7 as the
671
*- aim_algorithm argument.
672
*- - Improved diguyCharacter::check_character_visibility(). Character
673
*- will now use the cervical joint as the source point, and test
674
*- multiple positions on the target.
675
*- - Promoted diguyCharacter version 8 aim algorithm functions from
676
*- experimental to official.
677
*- - Characters that are flagged as scene object are no longer baked
678
*- into the world octtree. Editing them no longer requires an expensive
679
*- octtree rebuild.
680
*- - Fixed access bug in diguyScenario::find_path_shape().
681
*- - Added functions:
682
*>
683
*- - diguyCharacter::get_last_impact_is_from_vehicle()
684
*- - diguyCharacter::get_last_impact_speed_is_greater_than()
685
*- - diguyCharacterGuide::set_position_acquired()
686
*- - diguyCharacterGuide::set_orientation_acquired()
687
*- - diguyImpact::get_impact_speed()
688
*<
689
** \subsubsection v810api Version 8.1.0
690
**
691
*- - Added function diguyScenario::preload_sound()
692
*- - Added callback id diguyScenario::CALLBACK_ID_SAVE_SCENARIO_FILE
693
*- - Added experimental functions:
694
*>
695
*- - diguyCharacter::get_nearest_waypoint_index_in_path()
696
*- - diguyCharacter::set_desired_orientation_to_current_orientation()
697
*- - diguyCharacter::check_character_visibility()
698
*<
699
** \subsubsection v806api Version 8.0.6
700
**
701
*- - Fixed issue where turreted vehicles broadcast angle did not match
702
*- the DIS standard.
703
*- - Added experimental aim functions. These functions are for the new
704
*- DI-Guy version 8 aim algorithm.
705
*>
706
*- - diguyCharacter::set_aim_algorithm()
707
*- - diguyCharacter::get_aim_algorithm()
708
*- - diguyCharacter::set_aim_param_seek_tolerance()
709
*- - diguyCharacter::get_aim_param_seek_tolerance()
710
*- - diguyCharacter::set_aim_param_time_constant()
711
*- - diguyCharacter::get_aim_param_time_constant()
712
*- - diguyCharacter::set_aim_param_time_constant2()
713
*- - diguyCharacter::get_aim_param_time_constant2()
714
*- - diguyCharacter::set_aim_param_reset_time_constant()
715
*- - diguyCharacter::get_aim_param_reset_time_constant()
716
*- - diguyCharacter::set_aim_param_azimuth_acquired_range()
717
*- - diguyCharacter::get_aim_param_azimuth_acquired_range()
718
*- - diguyCharacter::set_aim_param_elevation_acquired_range()
719
*- - diguyCharacter::get_aim_param_elevation_acquired_range()
720
*- - diguyCharacter::set_aim_param_max_per_frame_adj_factor()
721
*- - diguyCharacter::get_aim_param_max_per_frame_adj_factor()
722
*- - diguyCharacter::set_aim_converge_every_frame()
723
*- - diguyCharacter::get_aim_converge_every_frame()
724
*- - diguyCharacter::aim_converge()
725
*<
726
** \subsubsection v805api Version 8.0.5
727
**
728
*- - Fixed issue with TXP geometry loader. If external textures are
729
*- marked as "Unknown" format, the actual format is now derived from
730
*- the filename extension in the case of .rgb, .rgba, .int, and .inta
731
*- texture files.
732
**
733
** \subsubsection v804api Version 8.0.4
734
**
735
*- - Improved documentation for function diguyScenario::update().
736
*- - Fixed some issues with I-Guy and its use of joystick input. I-Guy
737
*- input for DI-Guy 8 now more closely matches that of previous
738
*- versions.
739
*- - Fixed some issues with muzzle flashes. In particular, muzzle
740
*- flashes were not consistently showing up in DI-Guy Scenario, both
741
*- during initial simulation and during review data playback.
742
*- - DI-Guy now includes a DIGuyLicenseTool application that makes it
743
*- easier to gather the appropriate information needed to request a
744
*- license from Boston Dynamics. This utility program can be run
745
*- during Applications installation, or, after installation is
746
*- complete, from the DI-Guy folder in the Start Menu.
747
*- - Fixed a problem with programming examples that used OpenAL
748
*- with the VC7 static libs (Makefile.vc7_md, for example)
749
*- would crash when an .ogg file was loaded.
750
**
751
** \subsubsection v803api Version 8.0.3
752
**
753
*- - Fixed some issues with I-Guy:
754
*>
755
*- - Firing the I-Guy's weapon now correctly uses the trajectory
756
*- to the crosshair, instead of along the weapon barrel.
757
*- - Keyboard control of looking up and down now possible; use
758
*- 'Page Up' and 'Page Down' keys.
759
*<
760
*- - Fixed problem with networked characters climbing hills.
761
*- - Fixed problem with networked characters transitioning too quickly.
762
*- - Added Visual Studio 7.1 solution for diguy_ogl/simple_playback
763
*- example.
764
*- - Fixed issue with diguyCharacter::stop_all_sounds() and
765
*- diguyScenario::stop_all_sounds() not saving history events.
766
**
767
** \subsubsection v802api Version 8.0.2
768
**
769
*- - Fixed problem with some textures not loading properly.
770
*- - Fixed problem with DirectX examples not shutting down cleanly
771
*- if there is a license problem.
772
**
773
** \subsubsection v801api Version 8.0.1
774
**
775
*- - Fixed issues with temporary characters not always being destroyed.
776
*- - Fixed issues with temporary characters showing up in review
777
*- playback.
778
*- - Fixed issues with appearance effects being recycled properly.
779
*- - Fixed problem with eyes not participating in gazing.
780
*- - Rework of many examples in the programming_examples directory.
781
*- Some new examples added, some older ones removed.
782
*- - Added README.txt files to diguy_plugin examples that better describe
783
*- what the examples show, and how to use them in DI-Guy Scenario.
784
**
785
** \subsubsection v800api Version 8.0.0
786
**
787
*- - Initial 8.0 release candidate.
788
*- - Setting of tin (T In) and tout (T Out) calls for characters have
789
*- been tightened up. For example, a character's tin can no longer
790
*- be set to before the current scenario t. It could be before, but
791
*- would cause potential problems. Warning messages are printed to
792
*- the log when improper tin or tout times are attempted.
793
**
794
** \subsubsection v7120api Version 7.1.20
795
**
796
*- - Added new diguySignal and diguyScenario functions:
797
*>
798
*- - diguySignal::set_info_text()
799
*- - diguySignal::get_info_text()
800
*- - diguyScenario::signal_palette_show_all()
801
*- - diguyScenario::signal_palette_hide_all()
802
*<
803
*- - The signal info_text field allows signals to be tagged in the DI-Guy
804
*- Scenario Signal Palette with text different than the signal name.
805
*- The new show all and hide all functions take an optional filter
806
*- that can be used to make the operation work on a subset of the
807
*- signals.
808
**
809
** \subsubsection v7119api Version 7.1.19
810
**
811
*- - Fixed problem with vehicle_wheels character in which first frame
812
*- of playback had wheels in incorrect position.
813
*- - Improved documentation for diguyCharacter Performance Functions.
814
*- - Improved documentation for diguyCharacter functions that
815
*- deal with enabling and disabling characters in various ways.
816
*- - Added functions:
817
*>
818
*- - diguyLoadManager::set_zone_all_blends_disabled()
819
*- - diguyLoadManager::get_zone_all_blends_disabled()
820
*- - diguyLoadManager::set_zone_shape_switches_disabled()
821
*- - diguyLoadManager::get_zone_shape_switches_disabled()
822
*- - diguyLoadManager::set_zone_shape_callbacks_disabled()
823
*- - diguyLoadManager::get_zone_shape_callbacks_disabled()
824
*- - diguyLoadManager::set_zone_graphics_api_shape_update_disabled()
825
*- - diguyLoadManager::get_zone_graphics_api_shape_update_disabled()
826
*- - diguyCharacter::get_is_active()
827
*- - diguyCharacter::set_invisible_flag()
828
*- - diguyCharacter::get_invisible_flag()
829
*<
830
*- - Added function diguyCharacterGroup::get_is_network_paused(), and
831
*- deprecated function diguyCharacterGroup::get_paused()
832
*- - Added function diguyCharacterGroup::get_visible(), and
833
*- deprecated function diguyCharacterGroup::get_is_drawn()
834
*- - Made the following functions callable from decisions:
835
*>
836
*- - diguyCharacter::get_is_network_paused()
837
*- - diguyCharacter::get_is_network_published()
838
*- - diguyCharacter::get_is_network_reflected()
839
*<
840
** \subsubsection v718api Version 7.1.18
841
**
842
*- - Added functions:
843
*>
844
*- - diguy_extract_translation_and_euler_angles_from_matrix()
845
*- - diguy_create_matrix_from_translation_and_euler_angles()
846
*- - diguyCharacter::set_appearance()
847
*- - diguyCharacter::get_aim_is_possible()
848
*<
849
*- - Changed the name of several experimental functions:
850
*>
851
*- - diguyCharacter::start_appearance_effect() -> diguyCharacter::begin_appearance_effect()
852
*- - diguyCharacter::stop_appearance_effect() -> diguyCharacter::end_appearance_effect()
853
*<
854
*- - The following experimental functions were promoted to
855
*- official API status:
856
*>
857
*- - diguyScenario::create_temporary_character()
858
*- - diguyScenario::send_character_to_recycle_bin()
859
*- - diguyScenario::retrieve_character_from_recycle_bin()
860
*- - diguyScenario::set_playback_mode()
861
*- - diguyScenario::set_playback_mode_stop()
862
*- - diguyScenario::set_playback_mode_play()
863
*- - diguyCharacter::get_is_temporary()
864
*- - diguyCharacter::translate_all_paths()
865
*- - diguyCharacter::rotate_all_paths_about_point()
866
*- - diguyCharacter::rotate_all_paths_about_current_waypoint()
867
*- - diguyCharacter::manually_invoke_event_handler()
868
*<
869
*- - The ability to change the tin ("T In") time of a scenario has been
870
*- removed. THIS CHANGE WILL AFFECT SCENARIOS THAT USED THIS
871
*- FUNCTIONALITY. Setting the tin of a scenario to anything other than
872
*- 0 has always had unintended side-effects for DI-Guy, which is why
873
*- this capability has been removed. The functions
874
*- diguyScenario::set_tin() and diguyScenario::get_tin() are now
875
*- deprecated as a result. (Note that diguyCharacter::set_tin()
876
*- has not been changed.)
877
**
878
** \subsubsection v7116api Version 7.1.16
879
**
880
*- - Added the following functions:
881
*>
882
*- - diguyCharacter::set_initial_up_vector()
883
*- - diguyCharacter::get_initial_up_vector()
884
*- - diguyCharacter::get_up_vector()
885
*<
886
** \subsubsection v7114api Version 7.1.14
887
**
888
*- - Fixed issues with scenario merging. Chain settings and particle
889
*- systems in particular did not merge well.
890
**
891
** \subsubsection v7113api Version 7.1.13
892
**
893
*- - The following experimental functions were promoted to
894
*- official API status:
895
*>
896
*- - diguyCharacter::set_minimum_cpl()
897
*- - diguyCharacter::get_minimum_cpl()
898
*- - diguyCharacter::get_maximum_possible_current_cpl()
899
*- - diguyCharacter::maximize_current_cpl()
900
*- - diguyCharacter::set_automatic_cpl_switching_enabled()
901
*- - diguyCharacter::get_automatic_cpl_switching_enabled()
902
*- - diguyCharacter::set_current_cpl()
903
*- - diguyCharacter::get_current_cpl()
904
*- - diguyCharacter::set_position_accumulation_disabled()
905
*- - diguyCharacter::get_position_accumulation_disabled()
906
*- - diguyCharacter::set_all_blends_disabled()
907
*- - diguyCharacter::get_all_blends_disabled()
908
*- - diguyCharacter::set_shape_switches_disabled()
909
*- - diguyCharacter::get_shape_switches_disabled()
910
*- - diguyCharacter::set_shape_callbacks_disabled()
911
*- - diguyCharacter::get_shape_callbacks_disabled()
912
*- - diguyCharacter::set_graphics_api_shape_update_disabled()
913
*- - diguyCharacter::get_graphics_api_shape_update_disabled()
914
*- - diguyCharacter::optimized_update()
915
*- - diguyCharacter::get_is_recycled()
916
*- - diguyCharacter::get_last_impact_record()
917
*- - diguyCharacter::get_last_impact_number()
918
*- - diguyCharacter::get_last_impact_been_processed()
919
*- - diguyCharacter::set_last_impact_been_processed()
920
*- - diguyCharacter::get_last_impact_link()
921
*- - diguyCharacter::get_last_impact_link_is()
922
*- - diguyCharacter::set_weapon_projectile_is_visible()
923
*- - diguyCharacter::get_weapon_projectile_is_visible()
924
*- - diguyCharacter::start_appearance_effect()
925
*- - diguyCharacter::stop_appearance_effect()
926
*- - diguyApp::set_precompute_quaternions_enabled()
927
*- - diguyApp::get_precompute_quaternions_enabled()
928
*- - diguyApp::set_num_rendering_passes()
929
*- - diguyApp::get_num_rendering_passes()
930
*<
931
*- - The following deprecated functions were removed:
932
*>
933
*- - diguyApp::set_use_varsets_enabled()
934
*- - diguyApp::get_use_varsets_enabled()
935
*- - diguyCharacterGroup::set_all_members_t()
936
*<
937
** \subsubsection v712api Version 7.1.12
938
**
939
*- - Added new functions to diguyCharacter:
940
*>
941
*- - diguyCharacter::set_position_to_other_character_position()
942
*- - diguyCharacter::set_desired_position_to_current_position()
943
*- - diguyCharacter::set_desired_position_to_waypoint()
944
*- - diguyCharacter::set_desired_position_to_path_waypoint()
945
*- - diguyCharacter::set_desired_position_to_path_shape_waypoint()
946
*- - diguyCharacter::find_guide()
947
*<
948
** \subsubsection v711api Version 7.1.11
949
**
950
*- - The following functions were added to diguySensorRegion that
951
*- make it easier to write callback handlers for sensor regions:
952
*>
953
*- - get_autosense_callback_candidate_entered()
954
*- - get_autosense_callback_candidate_left()
955
*<
956
*- - Characters now fire live rounds by default when
957
*- diguyCharacter::fire_weapon() is called. THIS IS A CHANGE
958
*- FROM PREVIOUS DEFAULT BEHAVIOR.
959
*- The old behavior can be restored in two ways:
960
*>
961
*- - In DI-Guy Scenario, the Weapon Params tab on the Character
962
*- Elements palette has a checkbox called "Weapon Fires Live
963
*- Rounds". The checkbox can be unchecked, followed by pressing
964
*- the "Copy to All Characters" button.
965
*- - In a program using the DI-Guy API, the function
966
*- diguyCharacter::set_weapon_fires_live_rounds() can be called.
967
*<
968
*- - Character Labels Visibility is now set to 'None' in the default
969
*- .dss file.
970
*- - Added function to diguyCharacterGuide:
971
*>
972
*- - diguyCharacterGuide::remove_all_disabled_guides()
973
*<
974
*- - Made the following functions available to Decision Beads and Decision
975
*- Events:
976
*>
977
*- - diguyCharacter::remove_all_guides()
978
*- - diguyCharacter::remove_all_disabled_guides()
979
*<
980
*- - Removed DI-Guy Graphics API programming example
981
*- ogl_examples_high_precision/simple_playback_high_precision.
982
*- Replaced it with streamlined example
983
*- ogl_examples/simple_playback_far_positions.
984
*- - Fixed problem with props/scene objects showing up at origin
985
*- in after-action review.
986
**
987
** \subsubsection v7110api Version 7.1.10
988
**
989
*- - Fixed a problem with the DI-Guy Graphics API that prevented
990
*- textures on some characters from being correctly bound under
991
*- certain circumstances.
992
**
993
** \subsubsection v719api Version 7.1.9
994
**
995
*- - The following optional functions were added to plugins:
996
*>
997
*- - void key_press()
998
*- - void key_release()
999
*<
1000
*- - Added diguyIGuyController class for C++ and script control over
1001
*- the I-Guy character.
1002
*- - Setting the dead reckoning time threshold is now done by setting the
1003
*- variable time_threshold in the network.cfg file. The variable
1004
*- tick_period has been deprecated and will no longer have any effect.
1005
*- The default value is 5 seconds.
1006
**
1007
** \subsubsection v718api Version 7.1.8
1008
**
1009
*- - Added callback and event handling support for scenario variables:
1010
*>
1011
*- - diguyScenario::add_default_variable_callback()
1012
*- - diguyScenario::remove_default_variable_callback()
1013
*- - diguyScenario::remove_default_variable_callback_with_user_data()
1014
*- - diguyScenario::add_default_variable_callback_script()
1015
*- - diguyScenario::remove_default_variable_callback_script()
1016
*- - diguyScenario::register_variable_event_handler()
1017
*- - diguyScenario::register_variable_event_handler_from_library()
1018
*- - diguyScenario::register_variable_event_handler_script()
1019
*- - diguyScenario::has_registered_variable_event_handler()
1020
*- - diguyScenario::unregister_variable_event_handler()
1021
*- - diguyVariable::CALLBACK_ID_VALUE_CHANGED
1022
*- - diguyVariable::add_callback()
1023
*- - diguyVariable::remove_callback()
1024
*- - diguyVariable::remove_callback_with_user_data()
1025
*- - diguyVariable::add_callback_script()
1026
*- - diguyVariable::remove_callback_script()
1027
*- - diguyVariable::map_event_handler_to_callback_id()
1028
*- - diguyVariable::unmap_event_handler_from_callback_id()
1029
*<
1030
** \subsubsection v717api Version 7.1.7
1031
**
1032
*- - Added parameters polygon_offset_factor and polygon_offset_units
1033
*- to bdiGraphicsInitOgl structure to allow for better control
1034
*- over subface rendering in OpenGL.
1035
*- - Addressed some issues with diguyGraphicsLink and far positions.
1036
**
1037
** \subsubsection v716api Version 7.1.6
1038
**
1039
*- - Added functions to diguySensorRegion:
1040
*>
1041
*- - diguySensorRegion::contains_character_from_group()
1042
*<
1043
*- - Added experimental functions
1044
*- diguyScenario::create_temporary_character() and
1045
*- diguyCharacter::get_is_temporary(). These functions allow
1046
*- for the creation of 'temporary' characters that are not saved
1047
*- in a .dss file and are recycled on scenario reset. Temporary
1048
*- characters are useful as fired munitions, effects, etc.
1049
*- - Added functions to diguyCharacterGuide:
1050
*>
1051
*- - diguyCharacterGuide::get_position_acquired()
1052
*- - diguyCharacterGuide::get_orientation_acquired()
1053
*<
1054
*- - Added new callbacks to diguyCharacter:
1055
*>
1056
*- - diguyCharacter::CALLBACK_ID_GUIDE_POSITION_ACQUIRED
1057
*- - diguyCharacter::CALLBACK_ID_GUIDE_POSITION_UNACQUIRED
1058
*- - diguyCharacter::CALLBACK_ID_GUIDE_ORIENTATION_ACQUIRED
1059
*- - diguyCharacter::CALLBACK_ID_GUIDE_ORIENTATION_UNACQUIRED
1060
*- - diguyCharacter::CALLBACK_ID_CURRENT_TOUT_REACHED
1061
*<
1062
*- - Added function diguyCharacter::set_custom_orientation_rx_and_ry().
1063
*- This function allows the roll and pitch components of a
1064
*- character to be set without taking the character off of its
1065
*- current path, if there is one. The character's up vector
1066
*- (as set by diguyCharacter::set_up_vector()) must be 'c'
1067
*- (custom) for these values to have an effect.
1068
*- - Added new distance calculation functions:
1069
*>
1070
*- - diguyCharacter::get_distance_to_character()
1071
*- - diguyCharacter::get_distance_xy_to_character()
1072
*- - diguyCharacter::get_distance_to_path()
1073
*<
1074
*- - Added new experimental functions for locating a nearby character.
1075
*- These functions have a check_visibility argument; if 1, the
1076
*- function will do a simple ray trace against scene object geometry.
1077
*>
1078
*- - diguyCharacter::get_nearest_active_character()
1079
*- - diguyCharacter::get_nearest_active_character_in_group()
1080
*<
1081
*- - Added diguySensorRegion::contains_character_by_type()
1082
*- - Added diguyCharacter::force_local_path() new function that
1083
*- can grab a preexisting path. copy and transform it into the
1084
*- local space of the character and switch to it.
1085
*- - Removed function diguy_dis_get_action_from_entity_state() from
1086
*- diguy_module_dis.h. diguyCharacter::get_action_from_entity_state()
1087
*- should be called instead to map DIS values to an action.
1088
**
1089
** \subsubsection v715api Version 7.1.5
1090
**
1091
*- - Added experimental transformation functions for paths:
1092
*>
1093
*- - diguyCharacterPath::translate()
1094
*- - diguyCharacterPath::rotate_about_point()
1095
*- - diguyPathShape::translate()
1096
*- - diguyPathShape::rotate_about_point()
1097
*<
1098
*- - Added experimental performance tuning functions:
1099
*>
1100
*- - diguyScenario::send_character_to_recycle_bin()
1101
*- - diguyScenario::retrieve_character_from_recycle_bin()
1102
*<
1103
*- - Deprecated experimental performance tuning functions:
1104
*>
1105
*- - diguyApp::set_use_varsets_enabled()
1106
*- - diguyApp::get_use_varsets_enabled()
1107
*<
1108
** \subsubsection v714api Version 7.1.4
1109
**
1110
*- - Added function diguyCharacterPath::get_path_shape(), that
1111
*- provides access to a path's underlying path shape.
1112
*- - Added functions diguyCharacter::get_nearest_active_character()
1113
*- and diguyCharacter::get_nearest_active_character_in_group().
1114
*- These functions will walk through either all characters or all
1115
*- characters in a group, and return the nearest character that is
1116
*- both alive and enabled. An optional argument specifies whether
1117
*- to skip characters that are invisible to the caller because a
1118
*- scene object is in the way.
1119
*- - Added convenience functions diguyCharacter::get_distance() and
1120
*- diguyCharacter::get_distance_xy() for getting the distance
1121
*- between two characters.
1122
**
1123
** \subsubsection v713api Version 7.1.3
1124
**
1125
*- - Deprecated diguyChainSimulation::set_connection_character()
1126
*- function. Replaced with
1127
*- diguyChainSimulation::set_chain_mass_connection_character().
1128
*- - Added ability to set all chain mass positions in the
1129
*- call diguyChainSimulation::set_chain_mass_position()
1130
*- by passing -1 for the chain_mass_index.
1131
*- - Added ability to fix all chain mass positions in the
1132
*- call diguyChainSimulation::set_chain_mass_position_is_fixed()
1133
*- by passing -1 for the chain_mass_index.
1134
*- - Added aiming ability for characters with turrets.
1135
*- - Fixed problems with debug versions of programming examples
1136
*- that caused heap corruption on some Windows systems.
1137
**
1138
** \subsubsection v712api Version 7.1.2
1139
**
1140
*- - Added new callback to diguyCharacter:
1141
*>
1142
*- - diguyCharacter::CALLBACK_ID_DESIRED_ACTION_REACHED
1143
*<
1144
** \subsubsection v711api Version 7.1.1
1145
**
1146
*- - Added a new experimental character type called "chain_simulation"
1147
*- that can do realtime simulation of chains, ropes, and hoses.
1148
*- The appearance of the chain_simulation character determines its
1149
*- simulation settings. Chain simulation settings are created and
1150
*- on the DI-Guy Scenario Chain Sim Settings page, or via the
1151
*- diguyChainSettings class. Runtime parameters of the chain
1152
*- simulation are set by obtaining a diguyChainSimulation object
1153
*- via the diguyCharacter::get_chain_simulation() call.
1154
*- - Fixed issues with diguyCharacter::set_current_appearance().
1155
*- 0 was returned even if appearance change failed; not correctly
1156
*- returns -1 on failure.
1157
*- - Added new experimental functions to event bead classes. These
1158
*- functions make it possible to specify that event beads should
1159
*- begin and/or when a specific action bead or waypoint is reached.
1160
*- Members are:
1161
*>
1162
*- - diguyCharacterPathAimBead::get_begin_at_object_name()
1163
*- - diguyCharacterPathAimBead::set_begin_at_object_name()
1164
*- - diguyCharacterPathAimBead::get_end_at_object_name()
1165
*- - diguyCharacterPathAimBead::set_end_at_object_name()
1166
*- - diguyCharacterPathDecisionBead::get_begin_at_object_name()
1167
*- - diguyCharacterPathDecisionBead::set_begin_at_object_name()
1168
*- - diguyCharacterPathDecisionBead::get_end_at_object_name()
1169
*- - diguyCharacterPathDecisionBead::set_end_at_object_name()
1170
*- - diguyCharacterPathGazeBead::get_begin_at_object_name()
1171
*- - diguyCharacterPathGazeBead::set_begin_at_object_name()
1172
*- - diguyCharacterPathGazeBead::get_end_at_object_name()
1173
*- - diguyCharacterPathGazeBead::set_end_at_object_name()
1174
*- - diguyCharacterPathScriptBead::get_begin_at_object_name()
1175
*- - diguyCharacterPathScriptBead::set_begin_at_object_name()
1176
*- - diguyCharacterPathScriptBead::get_end_at_object_name()
1177
*- - diguyCharacterPathScriptBead::set_end_at_object_name()
1178
*<
1179
*- - Function diguyApp::load_plugin() has three new optional arguments:
1180
*- required_by_scenario, unload_on_scenario_close, and
1181
*- accepts_mouse_input.
1182
*- - Added functions to diguyImpact:
1183
*>
1184
*- - diguyImpact::get_location_in_link_coordinates()
1185
*<
1186
*- - Added functions to diguyScenario:
1187
*>
1188
*- - diguyScenario::get_impact_at_screen_coords()
1189
*<
1190
*- - Added functions to diguyCharacter:
1191
*>
1192
*- - diguyCharacter::set_label_text_shadow_color()
1193
*- - diguyCharacter::get_label_text_shadow_color()
1194
*- - diguyCharacter::set_label_text_shadow_is_visible()
1195
*- - diguyCharacter::get_label_text_shadow_is_visible()
1196
*<
1197
*- - Character label information is now saved in the scenario
1198
*- file and restored when the scenario is loaded.
1199
**
1200
** \subsubsection v710api Version 7.1.0
1201
**
1202
*- - Added function diguy_get_app(), a cleaner function for
1203
*- retrieving the diguyApp object than diguyApp::get_app().
1204
*- - Added experimental transformation functions for paths:
1205
*>
1206
*- - diguyCharacter::translate_all_paths()
1207
*- - diguyCharacter::rotate_all_paths_about_point()
1208
*- - diguyCharacter::rotate_all_paths_about_current_waypoint()
1209
*- - diguyCharacterGroup::translate_all_paths()
1210
*- - diguyCharacterGroup::rotate_all_paths_about_point()
1211
*- - diguyCharacterGroup::rotate_all_paths_about_current_waypoint()
1212
*<
1213
*- - Added functions diguyApp::get_diguy_base_dir() and
1214
*- diguyApp::get_diguy_subdir().
1215
*- - Added diguyCharacter::get_parent() function.
1216
*- - Added diguyViewLight::set_shadowmap_size() and
1217
*- diguyViewLight::get_shadowmap_size(); allows setting shadow
1218
*- map resolution.
1219
*- Must be a power of 2.
1220
*- - Made various internal performance enhancements for scenario
1221
*- updates.
1222
*- - Fixed a problem with motion LODs updating all links every
1223
*- now and then, even if the current action hasn't changed.
1224
*- - Made the scenario be able to go past 60000 seconds. Now a
1225
*- scenario tout greater than 60000 seconds is interpreted as
1226
*- unlimited.
1227
*- - Fixed a problem with motion LODs updating too many links.
1228
*- - Made various internal performance enhancements for scenario
1229
*- updates.
1230
*- - Added performance tuning functions:
1231
*>
1232
*- - diguyCharacter::set_automatic_cpl_switching_enabled()
1233
*- - diguyCharacter::get_automatic_cpl_switching_enabled()
1234
*- - diguyCharacter::set_minimum_cpl()
1235
*- - diguyCharacter::get_minimum_cpl()
1236
*- - diguyCharacter::get_maximum_possible_current_cpl()
1237
*- - diguyCharacter::maximize_current_cpl()
1238
*- - diguyCharacter::get_current_cpl()
1239
*- - diguyCharacter::set_position_accumulation_disabled()
1240
*- - diguyCharacter::get_position_accumulation_disabled()
1241
*- - diguyCharacter::set_all_blends_disabled()
1242
*- - diguyCharacter::get_all_blends_disabled()
1243
*- - diguyCharacter::set_shape_switches_disabled()
1244
*- - diguyCharacter::get_shape_switches_disabled()
1245
*- - diguyCharacter::set_shape_callbacks_disabled()
1246
*- - diguyCharacter::get_shape_callbacks_disabled()
1247
*- - diguyCharacter::set_graphics_api_shape_update_disabled()
1248
*- - diguyCharacter::get_graphics_api_shape_update_disabled()
1249
*- - diguyCharacter::optimized_update()
1250
*- - diguyScenario::optimized_update()
1251
*- - diguyScenario::send_character_to_recycle_bin()
1252
*- - diguyScenario::retrieve_character_from_recycle_bin()
1253
*- - diguyGraphicsLink::get_data_ptr()
1254
*- - diguyGraphicsLink::get_translation_data_index()
1255
*- - diguyGraphicsLink::get_rotation_data_index()
1256
*- - diguyGraphicsLink::get_scale_data_index()
1257
*- - diguyGraphicsLink::get_quat_data_ptr()
1258
*- - diguyGraphicsLink::get_quat_data_index()
1259
*- - diguyApp::set_use_varsets_enabled()
1260
*- - diguyApp::get_use_varsets_enabled()
1261
*- - diguyApp::set_precompute_quaternions_enabled()
1262
*- - diguyApp::get_precompute_quaternions_enabled()
1263
*<
1264
** \subsubsection v709api Version 7.0.9
1265
**
1266
*- - Rewrote portions of network mapping code, custom pdus/specialized
1267
*- motions will now work with more characters.
1268
*- This requires a new version of data, but any character that has
1269
*- been properly tagged with variants and postures should transmit
1270
*- better.
1271
*- - Rewrote speed code, networked characters should scale speed to
1272
*- try and match packets that are coming in.
1273
**
1274
** \subsubsection v708api Version 7.0.8
1275
**
1276
*- - Trying to get the position of a invalid link will behave a bit
1277
*- better.
1278
**
1279
** \subsubsection v706api Version 7.0.6
1280
**
1281
*- - Creating a path when a character has none will properly set
1282
*- the initial path name.
1283
**
1284
** \subsubsection v705api Version 7.0.5
1285
**
1286
*- - Fixed a crash that sometimes happened while reading comments
1287
*- out of texture .attr files.
1288
**
1289
** \subsubsection v703api Version 7.0.3
1290
**
1291
*- - Fixed a problem with the diguyGraphicsShape::update() function not
1292
*- always being called.
1293
*- - Fixed various bugs with VR-Link and DI-Guy time sync code.
1294
*- - Added warning if diguyCharacter::set_desired_action() is called
1295
*- with 0.0f as the speed.
1296
**
1297
** \subsubsection v702 Version 7.0.2
1298
**
1299
*- - Fixed a problem with gazing and aiming not zeroing in on the
1300
*- correct positions when using DI-Guy for Vega.
1301
**
1302
** \subsubsection v701 Version 7.0.1
1303
**
1304
*- - Deprecated "named_callback" functions in diguyApp. Event handler
1305
*- functions should be used instead.
1306
*- - Renamed some diguyViewCamera functions:
1307
*>
1308
*- - diguyViewCamera::get_world_offset_position() has become
1309
*- diguyViewCamera::get_segment_origin()
1310
*- - diguyViewCamera::get_local_position() has become
1311
*- diguyViewCamera::get_position_segment_offset()
1312
*- - diguyViewCamera::get_local_fix() has become
1313
*- diguyViewCamera::get_fix_segment_offset()
1314
*<
1315
*- - Added function diguyCharacterGroup::update_all_members(), and
1316
*- deprecated function diguyCharacterGroup::set_all_members_t()
1317
*- - Fixed problem with deleting one scenario and creating another
1318
*- causing a crash.
1319
*- - Fixed crash problem with function diguy_set_cfg_file().
1320
*- - Changed the default settings of automatic switching of graphics
1321
*- LODs and motion LODs, as set by
1322
*- diguyScenario::set_automatic_graphics_lod_switching() and
1323
*- diguyScenario::set_automatic_motion_lod_switching(). Previously
1324
*- automatic LOD switching was always enabled unless explicitly
1325
*- disabled by calling the above functions. Now automatic LOD
1326
*- switching will be disabled by default in DI-Guy API applications,
1327
*- but remain enabled by default in DI-Guy Scenario.
1328
*- - Added the following functions for adding and removing appearances:
1329
*>
1330
*- - diguyScenario::add_appearance()
1331
*- - diguyScenario::add_appearance_based_on_existing_appearance()
1332
*- - diguyScenario::remove_appearance()
1333
*<
1334
*- - diguyScenario::add_custom_appearance() deprecated;
1335
*- use diguyScenario::add_appearance().
1336
*- - diguyScenario::add_custom_appearance_based_on_existing_appearance()
1337
*- deprecated; use
1338
*- diguyScenario::add_appearance_based_on_existing_appearance().
1339
*- - Promoted the following functions from experimental to
1340
*- official status:
1341
*>
1342
*- - diguyCharacter::get_label_text()
1343
*- - diguyCharacter::set_label_text()
1344
*- - diguyCharacter::get_label_is_visible()
1345
*- - diguyCharacter::set_label_is_visible()
1346
*- - diguyCharacter::set_label_text_color()
1347
*- - diguyCharacter::get_label_text_color()
1348
*- - diguyCharacter::set_label_background_color()
1349
*- - diguyCharacter::get_label_background_color()
1350
*<
1351
*- - Removed diguyLoadManager camera functions (load manager camera
1352
*- now always tracks the scenario's primary view camera):
1353
*>
1354
*- - diguyLoadManager::add_camera()
1355
*- - diguyLoadManager::add_view_camera()
1356
*- - diguyLoadManager::move_camera()
1357
*- - diguyLoadManager::change_view_camera_settings()
1358
*- - diguyLoadManager::remove_camera()
1359
*- - diguyLoadManager::remove_all_cameras()
1360
*<
1361
** \subsubsection v700 Version 7.0.0
1362
**
1363
*- - Fixed problem with diguyCharacter::set_speed(). The set speed
1364
*- was being reset to the action's default speed after a short time,
1365
*- which is not correct behavior.
1366
*- - Changed values returned by diguyCharacter::get_aim_azimuth()
1367
*- and diguyCharacter::get_aim_elevation() to be character-
1368
*- relative rather than world-relative.
1369
**
1370
** \subsubsection v6110 Version 6.1.10
1371
**
1372
*- - Fixed event propagation bug when event tout is -1 and scenario
1373
*- tout is changed.
1374
*- - Added optional actor argument to
1375
*- diguyScenario::add_custom_appearance() function. This
1376
*- fixes a problem with characters not being able to switch
1377
*- to custom appearances with
1378
*- diguyCharacter::set_current_appearance() because of actors
1379
*- being different.
1380
*- - Added simple_playback_high_precision and view_far_position that
1381
*- demonstrate off the use of high precision position values.
1382
**
1383
** \subsubsection v619 Version 6.1.9
1384
**
1385
*- - Fixed problem with various diguyWaypoint "get" functions
1386
*- that return angles (e.g., diguyWaypoint::get_yaw_in());
1387
*- they weren't properly returning angles in degrees.
1388
*- - Fixed problem with merging scenarios: merged waypoints at
1389
*- the origin were not being rotated correctly.
1390
*- - Fixed problem with config file appearance syntax. The
1391
*- item "shapeset:shape" format caused a crash; it now works
1392
*- again.
1393
*- - Fixed problems with required plug-in list not saving or
1394
*- resetting properly.
1395
**
1396
** \subsubsection v618 Version 6.1.8
1397
**
1398
*- - Far positions rendering are now off by default, though
1399
*- DI-Guy Scenario and DI-Guy Scenario UI V6 turn them on.
1400
*- Practically this means that while internally things are
1401
*- done at a higher precision format, the render camera being
1402
*- in local space will be a change that needs to be explicitly
1403
*- asked for.
1404
*- - Added the following functions for controlling far position
1405
*- state:
1406
*>
1407
*- - diguy_ogl_get_use_far_positions()
1408
*- - diguy_ogl_set_use_far_positions()
1409
*- - diguy_graphics_get_use_far_positions()
1410
*- - diguy_graphics_set_use_far_positions()
1411
*<
1412
*- - Added accessors for setting character and scene object culling
1413
*- on/off.
1414
*>
1415
*- - diguyScenario::set_character_culling_enabled()
1416
*- - diguyScenario::get_character_culling_enabled()
1417
*- - diguyScenario::set_scene_object_culling_enabled()
1418
*- - diguyScenario::get_scene_object_culling_enabled()
1419
*<
1420
*- - Added accessors for setting character and scene object bounding
1421
*- volume visualization on/off. (only works for OpenGL)
1422
*>
1423
*- - diguyScenario::set_character_visualize_bounds_enabled()
1424
*- - diguyScenario::get_character_visualize_bounds_enabled()
1425
*- - diguyScenario::set_scene_object_visualize_bounds_enabled()
1426
*- - diguyScenario::get_scene_object_visualize_bounds_enabled()
1427
*<
1428
*- - Fixed a bug with diguyCharacter::set_current_appearance().
1429
*- - Added warning message if a proposed appearance change is null;
1430
*- fixes crash bug.
1431
*- - diguyScenario::trigger_script_event() deprecated;
1432
*- use diguyScenario::trigger_script().
1433
*- - Added function diguyScenario::trigger_decision().
1434
**
1435
** \subsubsection v617 Version 6.1.7
1436
**
1437
*- - Added new experimental functions. (Experimental
1438
*- functions are typically for probationary features whose final
1439
*- functionality or API has not been fully worked out.)
1440
*>
1441
*- - diguyCharacter::set_weapon_projectile_is_visible()
1442
*- - diguyCharacter::get_weapon_projectile_is_visible()
1443
*- - diguyCharacter::get_label_text()
1444
*- - diguyCharacter::set_label_text()
1445
*- - diguyCharacter::get_label_is_visible()
1446
*- - diguyCharacter::set_label_is_visible()
1447
*- - diguyCharacter::set_label_text_color()
1448
*- - diguyCharacter::get_label_text_color()
1449
*- - diguyCharacter::set_label_background_color()
1450
*- - diguyCharacter::get_label_background_color()
1451
*- - diguyScenario::find_character_at_screen_coords()
1452
*- - diguyScenario::set_playback_mode()
1453
*- - diguyScenario::set_playback_mode_stop()
1454
*- - diguyScenario::set_playback_mode_play()
1455
*<
1456
*- - Removed the function diguyLoadManager::set_enable_culling().
1457
*- - Added optional arguments initial_posture and initial_variant
1458
*- to diguyScenario::set_iguy_character().
1459
*- - Added function diguyScenario::get_time_of_day().
1460
*- - Fixed bug in diguyCharacter::is_speaking(). It was
1461
*- sometimes improperly returning FALSE.
1462
*- - Added the following functions that control whether the scenario
1463
*- will be reset (as if diguyScenario::reset() were called) when
1464
*- a merge happens:
1465
*>
1466
*- - diguyScenarioMergeSettings::set_reset_flag()
1467
*- - diguyScenarioMergeSettings::get_reset_flag()
1468
*<
1469
*- - Now incoming XC_MERGE_SCENARIO PDUs do not cause the running
1470
*- scenario to stop and reset.
1471
*- - Now incoming XC_MERGE_SCENARIO PDUs cause a
1472
*- XC_MERGE_SCENARIO_COMPLETE PDU to be sent when the merge
1473
*- operation is done.
1474
*- - Now incoming XC_LOAD_SCENARIO PDUs cause a
1475
*- XC_LOAD_SCENARIO_COMPLETE PDU to be sent when the load
1476
*- operation is complete.
1477
*- - Added the following functions:
1478
*>
1479
*- - diguyExerciseInterface::send_pdu_xc_eval_script()
1480
*- - diguyExerciseInterface::send_pdu_xc_time_now()
1481
*<
1482
*- - Now incoming XC_TIME_NOW messages cause the scenario to chase
1483
*- sync.
1484
*- - Now incoming XC_EVAL_SCRIPT messages cause the script therein
1485
*- to be evaluated.
1486
*- - diguyScenario::load() has been changed to not accept .flt
1487
*- filenames. The new function diguyScenario::create_scene_object()
1488
*- should be used instead.
1489
*- - Added the following functions:
1490
*>
1491
*- - diguyScenario::create_scene_object()
1492
*- - diguyScenario::destroy_scene_object()
1493
*<
1494
*- - Fixed problem with DX99 version of the library that prevented
1495
*- gazing from working correctly.
1496
*- - Added better detection of and error message for missing
1497
*- DI-Guy Data installation.
1498
*- - Renamed experimental "shot" class, function names, and
1499
*- callback ids to use the more generic term "impact":
1500
*>
1501
*- - diguyShot
1502
*>
1503
*- - diguyShot (class name) -> diguyImpact
1504
*- - get_shooter_name() -> get_attacker_name()
1505
*- - get_shooter() -> get_attacker()
1506
*- - get_shot_number() -> get_impact_number()
1507
*- - set_shot_number() -> set_impact_number()
1508
*- - get_shot_been_processed() -> get_impact_been_processed()
1509
*- - set_shot_been_processed() -> set_impact_been_processed()
1510
*<
1511
*- - diguyCharacter
1512
*>
1513
*- - CALLBACK_ID_GOT_SHOT -> CALLBACK_ID_IMPACT
1514
*- - CALLBACK_ID_SHOT_SUCCESS -> CALLBACK_ID_FIRE_WEAPON_SUCCESS
1515
*- - get_last_shot_record() -> get_last_impact_record()
1516
*- - get_last_shot_number() -> get_last_impact_number()
1517
*- - get_last_shot_been_processed() -> get_last_impact_been_processed()
1518
*- - set_last_shot_been_processed() -> set_last_impact_been_processed()
1519
*- - get_last_shot_link() -> get_last_impact_link()
1520
*- - get_last_shot_link_is() -> get_last_impact_link_is()
1521
*- - set_max_shot_hits() -> set_max_impact_hits()
1522
*<
1523
*- - diguyScenario
1524
*>
1525
*- - CALLBACK_ID_ENVIRONMENTAL_DETONATION -> CALLBACK_ID_SCENE_OBJECT_IMPACT
1526
*- - get_last_env_shot_info() -> get_last_env_impact_info()
1527
*<
1528
*<
1529
*- - Added function diguyExerciseInterface::send_pdu_xc_time_now().
1530
*- - Added code to properly respond to incoming XC_TIME_NOW PDUs.
1531
**
1532
** \subsubsection v616 Version 6.1.6
1533
**
1534
*- - Added functions and diguyExerciseInterface class for
1535
*- enhanced networking support:
1536
*>
1537
*- - diguyApp::get_exercise_interface()
1538
*- - diguyExerciseInterface::send_pdu_xc_load_scenario()
1539
*- - diguyExerciseInterface::send_pdu_xc_merge_scenario()
1540
*- - diguyExerciseInterface::send_pdu_xc_trigger_script()
1541
*- - diguyExerciseInterface::send_pdu_xc_control()
1542
*- - diguyScenario::set_tin_time_of_day()
1543
*- - diguyScenario::get_tin_time_of_day()
1544
*<
1545
*- - Added new functions diguyView::get_width() and
1546
*- diguyView::get_height().
1547
*- - Experimental plugin infrastructure has been reworked a fair amount.
1548
*>
1549
*- - Function diguyScenario::add_plugin() has been changed to
1550
*- diguyApp::load_plugin().
1551
*- - Function diguyScenario::remove_plugin() has been changed to
1552
*- diguyApp::unload_plugin().
1553
*- - The following functions will be imported when a plugin
1554
*- is loaded. Note that not only diguy_version() must be
1555
*- implemented:
1556
*>
1557
*- - void diguy_version(int* version_major, int* version_minor, int* version_point)
1558
*- - void initialize_plugin(diguyApp* app)
1559
*- - void deinitialize_plugin(diguyApp* app)
1560
*- - void initialize(diguyScenario* s)
1561
*- - void deinitialize(diguyScenario* s)
1562
*- - void pre_update(diguyScenario* s)
1563
*- - void post_update(diguyScenario* s)
1564
*- - void pre_draw(diguyScenario* s)
1565
*- - void post_draw(diguyScenario* s)
1566
*- - void reset(diguyScenario* s)
1567
*- - diguyPluginMouseCursor get_mouse_cursor(diguyScenario* s)
1568
*- - void mouse_press(diguyScenario* s, diguyPluginMouseEvent* mouse_event)
1569
*- - void mouse_drag(diguyScenario* s, diguyPluginMouseEvent* mouse_event)
1570
*- - void mouse_release(diguyScenario* s, diguyPluginMouseEvent* mouse_event)
1571
*- - void mouse_move(diguyScenario* s, diguyPluginMouseEvent* mouse_event)
1572
*- - void save_review_data(diguyScenario* s, const char* filename)
1573
*- - void load_review_data(diguyScenario* s, const char* filename)
1574
*<
1575
*<
1576
*- - Added an additional argument, merge_settings, to the
1577
*- diguyScenario::merge() function.
1578
*- - Added the following functions to enable better control of
1579
*- merging scenarios:
1580
*>
1581
*- - diguyScenario::create_merge_settings()
1582
*- - diguyScenario::destroy_merge_settings()
1583
*<
1584
*- - Added the following functions:
1585
*>
1586
*- - diguyCharacter::revive_now()
1587
*<
1588
*- - Added the following functions in support of 3D positional sound:
1589
*>
1590
*- - diguyCharacter::set_default_weapon_sound()
1591
*- - diguyCharacter::get_default_weapon_sound()
1592
*- - diguyCharacter::set_default_weapon_sound_gain()
1593
*- - diguyCharacter::get_default_weapon_sound_gain()
1594
*- - diguyCharacter::play_3d_sound()
1595
*- - diguySoundInstance::set_is_3d_sound_flag()
1596
*- - diguySoundInstance::get_is_3d_sound_flag()
1597
*<
1598
*- - Added new optional argument "gain" to diguyCharacter::play_sound()
1599
*- function.
1600
*- - Made following functions available to Decision Beads and Decision
1601
*- Events:
1602
*>
1603
*- - diguyCharacter::aim_at_character()
1604
*- - diguyCharacter::end_aim()
1605
*- - diguyCharacter::end_gaze()
1606
*- - diguyCharacter::end_lpoint()
1607
*- - diguyCharacter::gaze_at_character()
1608
*- - diguyCharacter::lpoint_at_character()
1609
*- - diguyCharacter::resume_interrupted_path()
1610
*- - diguyCharacter::play_3d_sound()
1611
*<
1612
*- - Removed unused variable "working_directory" from bdiExFaceInit
1613
*- structure. Replaced with variable "placeholder", leaving the
1614
*- option open for future init variables. Calls passing NULL for
1615
*- the bdiExFaceInit structure to diguy_exface_initialize() will
1616
*- not need to change.
1617
*- - Fixed problem with Decision Bead that incorrectly put function
1618
*- variable_less_than_string() in variable query functions instead
1619
*- of character query functions.
1620
*- - Added script_type argument to diguyScenario::eval_script() and
1621
*- diguyScenario::eval_script_file() functions.
1622
**
1623
** \subsubsection v615 Version 6.1.5
1624
**
1625
*- - Fixed problem that newly created characters were not
1626
*- appearing until the next scenario tick dt boundary was
1627
*- crossed.
1628
*- - diguyCharacter::set_t() deprecated;
1629
*- use diguyCharacter::update().
1630
*- - Added new function diguyCharacterPath::get_length().
1631
*- - Fixed potential crash from call to function
1632
*- diguyCharacterPath::update().
1633
*- - Character positions now stored in higher precision format.
1634
*>
1635
*- - Added new functions:
1636
*>
1637
*- - diguyCharacter::set_position_double()
1638
*- - diguyCharacter::get_position_double()
1639
*- - diguyCharacter::get_link_position_double()
1640
*- - diguyCharacter::get_link_position_with_offset_double()
1641
*- - diguyGraphicsLink::get_translation_double()
1642
*- - diguyViewCamera::get_position_double()
1643
*<
1644
*- - New local space camera. DI-Guy can now render in the local
1645
*- space of the camera. This allows DI-Guy to avoid putting
1646
*- large values on the rendering stack, avoiding numerical
1647
*- imprecision on objects that are far from the origin.
1648
*- - Added new local space camera functions:
1649
*>
1650
*- - diguyScenario::set_render_camera()
1651
*- - diguyViewCamera::get_local_fix()
1652
*- - diguyViewCamera::get_local_position()
1653
**
1654
** In OpenGL, use gluLookAt(local_position_x, local_position_y,
1655
** local_position_z, local_fix_x, local_fix_y, local_fix_z,
1656
** 0.0, 0.0, 1.0); to emulate the DI-Guy camera.
1657
*<
1658
*<
1659
** \subsubsection v614 Version 6.1.4
1660
**
1661
*- - Added new function diguyGraphicsShape::get_is_hidden().
1662
*- - Added new functions to diguyCharacterGroup class:
1663
*>
1664
*- - diguyCharacterGroup::get_num_members()
1665
*- - diguyCharacterGroup::get_member_at_index()
1666
*<
1667
*- - Added new functions to diguySensorRegion class:
1668
*>
1669
*- - diguySensorRegion::add_characters_in_region_to_group()
1670
*- - diguySensorRegion::add_candidate_characters_in_region_to_group()
1671
*<
1672
*- - Removed unused functions from diguySensorRegion class:
1673
*>
1674
*- - diguySensorRegion::get_characters_in_region()
1675
*- - diguySensorRegion::update_characters_in_region()
1676
*- - diguySensorRegion::update_candidate_characters_in_region()
1677
*<
1678
** \subsubsection v613 Version 6.1.3
1679
**
1680
*- - Added new utility function diguy_convert_euler_angle_order().
1681
*- This function should help DI-Guy API users convert the DI-Guy
1682
*- standard Euler angle order of ZXY (yaw then roll then pitch)
1683
*- into other Euler angle orders.
1684
*- - Added new argument rampup_interval to function
1685
*- diguyCharacter::add_motion_texture(). This function makes it
1686
*- possible to more smoothly enter a motion texture. Previously
1687
*- the rampup was hard-coded to 0.2 seconds. If the function
1688
*- is to end existing motion textures, it also uses the passed
1689
*- rampup interval as the rampdown interval for ending the
1690
*- existing motion textures.
1691
*- - Fixed annoying error message that was printed when motion textures
1692
*- ended.
1693
*- - Added new variants that can be added to custom motions:
1694
*>
1695
*- - DIGUY_MOTION_VARIANT_MISC0
1696
*- - DIGUY_MOTION_VARIANT_MISC1
1697
*- - DIGUY_MOTION_VARIANT_MISC2
1698
*- - DIGUY_MOTION_VARIANT_MISC3
1699
*- - DIGUY_MOTION_VARIANT_MISC4
1700
*- - DIGUY_MOTION_VARIANT_MISC5
1701
*- - DIGUY_MOTION_VARIANT_MISC6
1702
*- - DIGUY_MOTION_VARIANT_MISC7
1703
*- - DIGUY_MOTION_VARIANT_MISC8
1704
*- - DIGUY_MOTION_VARIANT_MISC9
1705
*<
1706
** \subsubsection v612 Version 6.1.2
1707
**
1708
*- - Changed win32 programming examples so that when examples are
1709
*- compiled for different versions of LIBC (i586_md_debug as
1710
*- opposed to i586_md, for example), the object files will be
1711
*- placed in separate directories.
1712
*- - Added new function calls that will free memory allocated by
1713
*- the DI-Guy Graphics API loader once platform-specific objects
1714
*- have been created:
1715
*>
1716
*- - diguyGraphicsMaterial::free_loader_memory()
1717
*- - diguyGraphicsMesh::free_loader_memory()
1718
*- - diguyGraphicsState::free_loader_memory()
1719
*- - diguyGraphicsTexture::free_loader_memory()
1720
*<
1721
*- - Fixed a problem with gazing in which a character with orientation
1722
*- change enabled would do an extra shuffle to the left and back
1723
*- again when the character was already facing the gaze angle at
1724
*- gaze start.
1725
*- - Added new side-effects to characters that die, including those
1726
*- for which the diguyCharacter::die_now() function is called:
1727
*>
1728
*- - all aiming is ended
1729
*- - all gazing is ended
1730
*- - all pointing is ended
1731
*- - head nodding and shaking are stopped
1732
*- - all gestures are aborted
1733
*- - all sounds originated by the character are stopped
1734
*<
1735
*- - Added new function call limitations to dead characters. The
1736
*- following function calls will have no effect on dead characters:
1737
*>
1738
*- - diguyCharacter::add_motion_texture()
1739
*- - diguyCharacter::aim_at_angle()
1740
*- - diguyCharacter::aim_at_angle_local()
1741
*- - diguyCharacter::aim_at_character()
1742
*- - diguyCharacter::aim_at_point()
1743
*- - diguyCharacter::aim_at_point_local()
1744
*- - diguyCharacter::create_and_force_bridge_path()
1745
*- - diguyCharacter::execute_gesture()
1746
*- - diguyCharacter::execute_1stage_gesture()
1747
*- - diguyCharacter::execute_2stage_gesture()
1748
*- - diguyCharacter::execute_3stage_gesture()
1749
*- - diguyCharacter::fire_screen_space_bullet()
1750
*- - diguyCharacter::fire_weapon()
1751
*- - diguyCharacter::fire_weapon_n_times()
1752
*- - diguyCharacter::force_action()
1753
*- - diguyCharacter::force_action_and_path_shape()
1754
*- - diguyCharacter::force_action_with_duration()
1755
*- - diguyCharacter::force_partial_path()
1756
*- - diguyCharacter::force_path()
1757
*- - diguyCharacter::gaze_at_angle()
1758
*- - diguyCharacter::gaze_at_angle_local()
1759
*- - diguyCharacter::gaze_at_character()
1760
*- - diguyCharacter::gaze_at_point()
1761
*- - diguyCharacter::gaze_at_point_local()
1762
*- - diguyCharacter::lpoint_at_angle()
1763
*- - diguyCharacter::lpoint_at_angle_local()
1764
*- - diguyCharacter::lpoint_at_character()
1765
*- - diguyCharacter::lpoint_at_point()
1766
*- - diguyCharacter::lpoint_at_point_local()
1767
*- - diguyCharacter::nod_head()
1768
*- - diguyCharacter::play_sound()
1769
*- - diguyCharacter::push_path()
1770
*- - diguyCharacter::resume_interrupted_path()
1771
*- - diguyCharacter::set_aim()
1772
*- - diguyCharacter::set_desired_action()
1773
*- - diguyCharacter::set_nod()
1774
*- - diguyCharacter::shake_head()
1775
*<
1776
*- - Added diguyCharacterPath::get_point_at_distance() function that
1777
*- makes it possible to sample path points. The function is very
1778
*- similar to diguyPathShape::get_point_at_distance().
1779
*- - Changed diguyScenario::create_waypoint() function to take an
1780
*- additional argument. Waypoints created with the function can
1781
*- now have different initial weights for entering and leaving the
1782
*- waypoint.
1783
**
1784
** \subsubsection v611 Version 6.1.1
1785
**
1786
*- - Added new member function:
1787
*>
1788
*- - diguyLoadManager::remove_all_cameras()
1789
*<
1790
*- - Added new member functions to diguyVariable that allow for
1791
*- setting and getting the initial value of the variable, and
1792
*- for retrieving the scenario and/or character the variable
1793
*- belongs to:
1794
*>
1795
*- - diguyVariable::get_scenario()
1796
*- - diguyVariable::get_character()
1797
*- - diguyVariable::get_initial_value_as_int()
1798
*- - diguyVariable::get_initial_value_as_float()
1799
*- - diguyVariable::get_initial_value_as_string()
1800
*- - diguyVariable::set_initial_value_as_int()
1801
*- - diguyVariable::set_initial_value_as_float()
1802
*- - diguyVariable::set_initial_value_as_string()
1803
*<
1804
*- - Added character variables to characters. Character variables
1805
*- are almost exactly like scenario variables but are local to each
1806
*- character instead of being shared across the scenario. For
1807
*- example, all characters in a scenario could be given a variable
1808
*- named "panic_level" that tracks how panicked the character is.
1809
*- Character variables use the same class as scenario variables:
1810
*- diguyVariable. The following functions are available for
1811
*- accessing character variables:
1812
*>
1813
*- - diguyCharacter::get_num_variables()
1814
*- - diguyCharacter::get_variable_at_index()
1815
*- - diguyCharacter::find_variable()
1816
*- - diguyCharacter::find_or_create_variable()
1817
*- - diguyCharacter::destroy_variable()
1818
*- - diguyCharacter::variable_equal_to_int()
1819
*- - diguyCharacter::variable_greater_than_int()
1820
*- - diguyCharacter::variable_less_than_int()
1821
*- - diguyCharacter::variable_equal_to_float()
1822
*- - diguyCharacter::variable_greater_than_float()
1823
*- - diguyCharacter::variable_less_than_float()
1824
*- - diguyCharacter::variable_equal_to_string()
1825
*- - diguyCharacter::variable_greater_than_string()
1826
*- - diguyCharacter::variable_less_than_string()
1827
*<
1828
** \subsubsection v610 Version 6.1.0
1829
**
1830
*- - Added new functions to the DI-Guy Graphics API to make it easier
1831
*- to know which character links or shapes belong to, and to easily
1832
*- get a pointer to the character's base link:
1833
*>
1834
*- - diguyGraphicsLink::get_character()
1835
*- - diguyGraphicsShape::get_character()
1836
*- - diguyCharacter::get_position_link()
1837
*<
1838
*- - Added new function diguyGraphicsLink::get_transformation_matrix().
1839
*- This function provides access to the link transformation in matrix
1840
*- form rather than separate vectors for translation, rotation, etc.
1841
*- - Added new blend functions "StepHalfway" and "Waver". The
1842
*- "StepHalfway" blend function makes an instant step from 0 to 1
1843
*- halfway through the blend. The "Waver" blend function wavers from 0
1844
*- to 1 back to 0 and back to 1 using a three-quarter sine wave.
1845
*- - Added functions to diguyScenario API:
1846
*>
1847
*- - diguyScenario::get_character_type_num_gestures()
1848
*- - diguyScenario::get_character_type_gesture_at_index()
1849
*<
1850
*- - Added functions to diguyCharacterGesture API:
1851
*>
1852
*- - diguyCharacterGesture::force_table_action()
1853
*<
1854
** \subsubsection v608 Version 6.0.8
1855
**
1856
*- - Changed DI-Guy Graphics API to not print a warning if a geometry
1857
*- file is not found. This allows external loaders to load their
1858
*- own version of a geometry file without warnings, and without the
1859
*- file having to be present in $DIGUY/geometry.
1860
*- - Added function diguyCharacter::is_group_member().
1861
*- - For Windows, added the DI-Guy version number as a suffix to the
1862
*- .dll that gets installed in the bin directory.
1863
**
1864
** \subsubsection v606 Version 6.0.6
1865
**
1866
*- - Changed default for gaze parameter "orientation enabled for
1867
*- gaze". In DI-Guy 5.x this parameter defaulted to 0 for all
1868
*- characters except the sergeant. In earlier versions of 6.0 this
1869
*- was changed to "1 if character has turning actions, else 0".
1870
*- This change has, however, resulted in too much confusion and
1871
*- user astonishment. The new (and hopefully final) change
1872
*- is to default the parameter to 0 for *all* characters. This fixes
1873
*- a backwards incompatibility problem where some version 5 characters
1874
*- that were gazing would leave their path on version 6 and thus not
1875
*- complete the actions specified by their path.
1876
*- - Implemented function diguyCharacter::end_aim(). This function
1877
*- had been omitted from the DI-Guy API.
1878
*- - Fixed problem with initial value of scenario variables, where
1879
*- the integer value of each variable was initialized to zero,
1880
*- even if the intended initial value was nonzero.
1881
*- - Fixed problem when merging two scenarios with different
1882
*- values for tick dt. Decision beads, Script event beads, Aim
1883
*- beads and Gaze beads were being improperly scheduled.
1884
**
1885
** \subsubsection v605 Version 6.0.5
1886
**
1887
*- - Fixed diguyCharacter::get_aim_azimuth() and
1888
*- diguyCharacter::get_aim_elevation(). They were returning
1889
*- zero. Now they return meaningful values if the character is
1890
*- aiming.
1891
**
1892
** \subsubsection v604 Version 6.0.4
1893
**
1894
*- - DI-Guy can now use OpenGL's multitexturing mechanism. The
1895
*- OpenGL texture unit that DI-Guy will use can be set by
1896
*- setting the bdiGraphicsInitOgl::use_multitexture_extension
1897
*- and bdiGraphicsInitOgl::texture_unit initialization variables.
1898
**
1899
** \subsubsection v603 Version 6.0.3
1900
**
1901
*- - Fixed a problem with DI-Guy Graphics API functions not being
1902
*- correctly declared for DLL use.
1903
*- - Fixed a problem with calling path edit functions on a path
1904
*- that is in use. The change was not being fully propagated
1905
*- to the character's motions.
1906
*- - Eliminated GoThere camera instability at low frame rates.
1907
*- - Eliminated aiming instability at low frame rates and at low
1908
*- desired locate times.
1909
**
1910
** \subsubsection v602 Version 6.0.2
1911
**
1912
*- - No changes.
1913
**
1914
** \subsubsection v601 Version 6.0.1
1915
**
1916
*- - Fixed problem with motion scaling where the scale factor was
1917
*- being applied twice in some cases. (PR 3029)
1918
*- - Removed deprecated diguyCharacter functions:
1919
*>
1920
*- - diguyCharacter::force_action_by_name()
1921
*- - diguyCharacter::get_desired_action_name()
1922
*- - diguyCharacter::set_desired_action_by_name()
1923
*- - diguyCharacter::force_partial_path_by_name()
1924
*- - diguyCharacter::force_path_by_name()
1925
*- - diguyCharacter::push_path_by_name()
1926
*- - diguyCharacter::set_parent_by_name()
1927
*<
1928
*- - Removed deprecated diguySensorRegion function
1929
*- diguySensorRegion::contains_character_by_name().
1930
*- - Removed deprecated diguySignal function diguySignal::play_sound().
1931
*- - Removed deprecated diguyScenario function
1932
*- diguyScenario::find_or_create_face_expression().
1933
**
1934
** \subsubsection v600 Version 6.0.0
1935
**
1936
*- - Made aiming precise. Characters now actually aim at the
1937
*- targets specified by aim beads, rather than giving an
1938
*- approximation of proper aim.
1939
*- - Made aiming dynamic. Character aiming motion is now much more
1940
*- realistic, homing in on the specified target.
1941
*- - Added new diguyCharacter functions:
1942
*>
1943
*- - diguyCharacter::aim_at_angle()
1944
*- - diguyCharacter::aim_at_angle_local()
1945
*- - diguyCharacter::aim_at_point()
1946
*- - diguyCharacter::aim_at_point_local()
1947
*- - diguyCharacter::aim_at_character()
1948
*- - diguyCharacter::set_aim_param_desired_locate_time()
1949
*- - diguyCharacter::get_aim_param_desired_locate_time()
1950
*- - diguyCharacter::get_aim_is_acquired()
1951
*- - diguyCharacter::get_aim_is_steady()
1952
*- - diguyCharacter::set_weapon_near_range()
1953
*- - diguyCharacter::set_weapon_far_range()
1954
*<
1955
*- - Added diguyLoadManager class. Members are:
1956
*>
1957
*- - diguyLoadManager::add_camera()
1958
*- - diguyLoadManager::add_view_camera()
1959
*- - diguyLoadManager::move_camera()
1960
*- - diguyLoadManager::change_view_camera_settings()
1961
*- - diguyLoadManager::remove_camera()
1962
*- - diguyLoadManager::set_enable_culling()
1963
*- - diguyLoadManager::set_nonvisible_update_rate()
1964
*- - diguyLoadManager::set_zone_bounds()
1965
*- - diguyLoadManager::set_zone_parameters()
1966
*- - diguyLoadManager::set_max_update_period()
1967
*<
1968
*- - Added new diguyApp functions:
1969
*>
1970
*- - diguyApp::create_load_manager()
1971
*- - diguyApp::get_load_manager()
1972
*- - diguyApp::destroy_load_manager()
1973
*<
1974
*- - Added new diguyCharacter functions:
1975
*>
1976
*- - diguyCharacter::get_bounding_radius()
1977
*- - diguyCharacter::get_default_bounding_radius()
1978
*- - diguyCharacter::set_bounding_radius()
1979
*<
1980
*- - Added new diguyApp class. There is only one diguyApp object per
1981
*- application. It is available after the diguy_*_initialize() call
1982
*- by calling the static function diguyApp::get_app(). The diguyApp
1983
*- object will hold data that is application-wide, which in the past
1984
*- has been somewhat artificially placed in the diguyScenario class.
1985
*- - Removed support for character history types
1986
*- DIGUY_HISTORY_TYPE_FIRST and DIGUY_HISTORY_TYPE_LAST. Characters
1987
*- saved using these history types will have their history type
1988
*- set to DIGUY_HISTORY_TYPE_COMPLETE.
1989
*- - Moved some static functions from diguyScenario to diguyApp:
1990
*>
1991
*- - diguyScenario::add_default_callback() deprecated;
1992
*- use diguyApp::add_default_scenario_callback()
1993
*- - diguyScenario::remove_default_callback() deprecated;
1994
*- use diguyApp::remove_default_scenario_callback()
1995
*- - diguyScenario::remove_default_callback_with_user_data() deprecated;
1996
*- use diguyApp::remove_default_scenario_callback_with_user_data()
1997
*- - diguyScenario::add_default_callback_script() deprecated;
1998
*- use diguyApp::add_default_scenario_callback_script()
1999
*- - diguyScenario::remove_default_callback_script() deprecated;
2000
*- use diguyApp::remove_default_scenario_callback_script()
2001
*<
2002
*- - Deprecated two diguyCharacterPath callback ids. A decision
2003
*- bead or script bead at the appropriate place in the path
2004
*- should be used instead of the deprecated callbacks:
2005
*>
2006
*- - CALLBACK_ID_TIME_LEFT has been changed to
2007
*- CALLBACK_ID_TIME_LEFT_DEPRECATED
2008
*- - CALLBACK_ID_TIME_INTO has been changed to
2009
*- CALLBACK_ID_TIME_INTO_DEPRECATED
2010
*<
2011
*- - Fixed problem with gestures not range checking stage
2012
*- argument. If 0 was passed as the stage in some functions,
2013
*- memory overwrites could have occurred or garbage results could
2014
*- have been returned. Also updated doc of affected functions
2015
*- to specify that stages are between 1 and 3.
2016
*- - Added functions to character for manually applying path
2017
*- bead effects:
2018
*>
2019
*- - diguyCharacter::apply_aim_bead()
2020
*- - diguyCharacter::apply_decision_bead()
2021
*- - diguyCharacter::apply_gaze_bead()
2022
*- - diguyCharacter::apply_script_bead()
2023
*<
2024
*- - Added new diguyCharacterPathDecisionBead class. Members are:
2025
*>
2026
*- - diguyCharacterPathDecisionBead::get_name()
2027
*- - diguyCharacterPathDecisionBead::set_name()
2028
*- - diguyCharacterPathDecisionBead::get_distance_into_path()
2029
*- - diguyCharacterPathDecisionBead::set_distance_into_path()
2030
*- - diguyCharacterPathDecisionBead::get_length()
2031
*- - diguyCharacterPathDecisionBead::set_length()
2032
*- - diguyCharacterPathDecisionBead::get_tin()
2033
*- - diguyCharacterPathDecisionBead::set_tin()
2034
*- - diguyCharacterPathDecisionBead::get_duration()
2035
*- - diguyCharacterPathDecisionBead::set_duration()
2036
*<
2037
*- - Added new diguyCharacterPathAimBead class. Members are:
2038
*>
2039
*- - diguyCharacterPathAimBead::get_name()
2040
*- - diguyCharacterPathAimBead::set_name()
2041
*- - diguyCharacterPathAimBead::get_distance_into_path()
2042
*- - diguyCharacterPathAimBead::set_distance_into_path()
2043
*- - diguyCharacterPathAimBead::get_length()
2044
*- - diguyCharacterPathAimBead::set_length()
2045
*- - diguyCharacterPathAimBead::get_tin()
2046
*- - diguyCharacterPathAimBead::set_tin()
2047
*- - diguyCharacterPathAimBead::get_duration()
2048
*- - diguyCharacterPathAimBead::set_duration()
2049
*<
2050
*- - Added new diguyCharacterPathGazeBead class. Members are:
2051
*>
2052
*- - diguyCharacterPathGazeBead::get_name()
2053
*- - diguyCharacterPathGazeBead::set_name()
2054
*- - diguyCharacterPathGazeBead::get_distance_into_path()
2055
*- - diguyCharacterPathGazeBead::set_distance_into_path()
2056
*- - diguyCharacterPathGazeBead::get_length()
2057
*- - diguyCharacterPathGazeBead::set_length()
2058
*- - diguyCharacterPathGazeBead::get_tin()
2059
*- - diguyCharacterPathGazeBead::set_tin()
2060
*- - diguyCharacterPathGazeBead::get_duration()
2061
*- - diguyCharacterPathGazeBead::set_duration()
2062
*<
2063
*- - Added function diguyCharacter::find_waypoint(). This
2064
*- function finds a waypoint by name.
2065
*- - Added functions to access new bead types. Also added find
2066
*- functions for action beads and script beads. The following
2067
*- functions have been added to diguyCharacterPath:
2068
*>
2069
*- - diguyCharacterPath::find_waypoint()
2070
*- - diguyCharacterPath::find_action_bead()
2071
*- - diguyCharacterPath::find_script_bead()
2072
*- - diguyCharacterPath::get_num_aim_beads()
2073
*- - diguyCharacterPath::get_aim_bead_at_index()
2074
*- - diguyCharacterPath::find_aim_bead()
2075
*- - diguyCharacterPath::get_num_decision_beads()
2076
*- - diguyCharacterPath::get_decision_bead_at_index()
2077
*- - diguyCharacterPath::find_decision_bead()
2078
*- - diguyCharacterPath::get_num_gaze_beads()
2079
*- - diguyCharacterPath::get_gaze_bead_at_index()
2080
*- - diguyCharacterPath::find_gaze_bead()
2081
*<
2082
*- - Added functions to diguyCharacterGesture API:
2083
*>
2084
*- - diguyCharacterGesture::set_table_action_begin()
2085
*- - diguyCharacterGesture::get_table_action_begin()
2086
*- - diguyCharacterGesture::set_table_action_end()
2087
*- - diguyCharacterGesture::get_table_action_end()
2088
*- - diguyCharacterGesture::get_table_action_now()
2089
*- - diguyCharacterGesture::get_table_action_next()
2090
*- - diguyCharacterGesture::get_rampup_duration()
2091
*- - diguyCharacterGesture::set_rampup_duration()
2092
*- - diguyCharacterGesture::get_rampup_blend_function_name()
2093
*- - diguyCharacterGesture::set_rampup_blend_function_name()
2094
*- - diguyCharacterGesture::get_rampdown_duration()
2095
*- - diguyCharacterGesture::set_rampdown_duration()
2096
*- - diguyCharacterGesture::get_rampdown_blend_function_name()
2097
*- - diguyCharacterGesture::set_rampdown_blend_function_name()
2098
*- - diguyCharacterGesture::get_table_action_rep_duration()
2099
*- - diguyCharacterGesture::get_table_transition_duration()
2100
*- - diguyCharacterGesture::get_default_blend_duration()
2101
*- - diguyCharacterGesture::get_num_table_actions()
2102
*- - diguyCharacterGesture::get_table_action_at_index()
2103
*<
2104
*- - Added functions for setting initial motion texture parameters:
2105
*>
2106
*- - diguyCharacter::set_initial_motion_texture()
2107
*- - diguyCharacter::get_initial_motion_texture()
2108
*- - diguyCharacter::set_initial_motion_texture_gain()
2109
*- - diguyCharacter::get_initial_motion_texture_gain()
2110
*<
2111
*- - Plugins require a license.
2112
*- - Moved to flexlm 10.1 on Windows for license management.
2113
*- - Particles now work in locked scenarios.
2114
*- - Made characters with non default actors display properly in
2115
*- Vega Prime.
2116
*- - Saving review data now saves all generated data, not just up to
2117
*- the time slider.
2118
*- - Fixed a bug with history saving.
2119
**
2120
** \subsubsection v535 Version 5.3.5
2121
**
2122
*- - Fixed problem with .flt loader not dealing well with .flt files that
2123
*- contain multiple nodes that have the same name. The .flt loader now
2124
*- more vigorously checks for name collisions.
2125
*- - Removed one unused level of Motion LODs. The unused LOD 6 was not
2126
*- mentioned in documentation nor was it used in motion generation
2127
*- code. This change requires use of DI-Guy Data 5.3.5.
2128
*- - Worked on diguyCharacterGesture API:
2129
*>
2130
*- - diguyCharacterGesture::get_num_stages() deprecated;
2131
*- use diguyCharacterGesture::get_num_progression_stages()
2132
*- - diguyCharacterGesture::set_stage_duration() deprecated
2133
*- use diguyCharacterGesture::set_progression_stage_duration()
2134
*- - diguyCharacterGesture::get_stage_duration() deprecated
2135
*- use diguyCharacterGesture::get_progression_stage_duration()
2136
*- - diguyCharacterGesture::get_stage_optimal_duration() deprecated
2137
*- use diguyCharacterGesture::get_progression_stage_optimal_duration()
2138
*<
2139
*- - Worked on diguyCharacterGesture documentation. Added more
2140
*- which functions can be called for which gesture types.
2141
*- - Added type diguyCharacterGestureType and corresponding function
2142
*- diguyCharacterGesture::get_type().
2143
*- - New experimental shooting functionality:
2144
*>
2145
*- - Added callback diguyCharacter::CALLBACK_ID_GOT_SHOT.
2146
*- - Added callback diguyCharacter::CALLBACK_ID_SHOT_SUCCESS.
2147
*- - Added new find all hits functionality.
2148
*- - Added new diguyShot class accessible from scripts,
2149
*- records who got shot and where.
2150
*- - Characters can now shoot multiple targets; added
2151
*- max_shot_hits to control the maximum number of
2152
*- shots to report. By default scene objects stop bullets.
2153
*- - Weapon spread shots test against the octtree first (speed up).
2154
*<
2155
*- - Fixed some bugs with review data.
2156
*- - Experimental plugin infrastructure:
2157
*>
2158
*- - Added functions diguyScenario::add_plugin() and
2159
*- diguyScenario::remove_plugin().
2160
*- - The following functions can be exported from the dll to plug
2161
*- into DI-Guy code:
2162
*>
2163
*- - void initialize(diguyScenario* s)
2164
*- - void deinitialize(diguyScenario* s)
2165
*- - void pre_draw(diguyScenario* s)
2166
*- - void post_draw(diguyScenario* s)
2167
*- - void update(diguyScenario* s)
2168
*- - void reset(diguyScenario* s)
2169
*- - void save_review_data(const char* filename)
2170
*- - void load_review_data(const char* filename)
2171
*<
2172
*- - See Documentation for more information.
2173
*<
2174
**
2175
** \subsubsection v534 Version 5.3.4
2176
**
2177
*- - Added new callbacks for use with the diguyCharacter::add_callback()
2178
*- function:
2179
*>
2180
*- - CALLBACK_ID_CURRENT_APPEARANCE_CHANGED
2181
*- - CALLBACK_ID_CURRENT_HEAD_APPEARANCE_CHANGED
2182
*<
2183
*- - Added new gesture type: table gestures. Table gestures are much
2184
*- like character action tables, and allow a single gesture to employ
2185
*- many different motions.
2186
**
2187
** \subsubsection v533 Version 5.3.3
2188
**
2189
*- - Improved SDK's initialization time. Version 5.3.3 should take about
2190
*- half the time of version 5.3.2 to initialize.
2191
*- - Changed default override stage of function
2192
*- diguyCharacter::create_pose_override() from 2 to 3.
2193
*- - Improved documentation for diguyCharacter "Pose Functions"
2194
*- section.
2195
*- - Improved documentation for
2196
*- diguyScenario::set_automatic_motion_lod_switching() function.
2197
*- - Added function diguyCharacter::end_all_gestures(), a gentler way
2198
*- than diguyCharacter::abort_all_gestures() to stop a character's
2199
*- active gestures.
2200
*- - Fixed problem with changing an existing character's type via the
2201
*- diguyCharacter::set_character_type() function. The geometry of the
2202
*- character wasn't displaying properly until the scenario was reset.
2203
*- This has been fixed.
2204
*- - Fixed documentation for the
2205
*- diguyCharacterPoseOverride::get_pose_in_radians() function; it was
2206
*- incorrectly implying that it could be used to read the current pose
2207
*- of the character, when it really only returns the most recent pose
2208
*- as set by diguyCharacterPoseOverride::set_pose_in_radians().
2209
*- - Fixed problem where specifying a non-existent default appearance
2210
*- for a character caused a crash.
2211
*- - Fixed problem where characters with no links due to config file
2212
*- syntax errors caused a crash.
2213
**
2214
** \subsubsection v532 Version 5.3.2
2215
**
2216
*- - Added missing initial position and orientation functions to
2217
*- diguyCharacter:
2218
*>
2219
*- - diguyCharacter::set_initial_position()
2220
*- - diguyCharacter::get_initial_position()
2221
*- - diguyCharacter::set_initial_orientation()
2222
*- - diguyCharacter::get_initial_orientation()
2223
*<
2224
*- - Added set_name() functions to most DI-Guy API objects.
2225
*- - Added better access to path data such as waypoints and action
2226
*- beads. The following functions have been added to
2227
*- diguyCharacterPath:
2228
*>
2229
*- - diguyCharacterPath::update()
2230
*- - diguyCharacterPath::get_num_waypoints()
2231
*- - diguyCharacterPath::get_waypoint_at_index()
2232
*- - diguyCharacterPath::create_waypoint()
2233
*- - diguyCharacterPath::get_num_action_beads()
2234
*- - diguyCharacterPath::get_action_bead_at_index()
2235
*- - diguyCharacterPath::create_action_bead()
2236
*- - diguyCharacterPath::destroy_action_bead()
2237
*- - diguyCharacterPath::get_num_script_beads()
2238
*- - diguyCharacterPath::get_script_bead_at_index()
2239
*- - diguyCharacterPath::create_script_bead()
2240
*- - diguyCharacterPath::destroy_script_bead()
2241
*<
2242
*- - Added better access to path shape data such as waypoints. The
2243
*- following functions have been added to diguyPathShape:
2244
*>
2245
*- - diguyPathShape::update()
2246
*- - diguyPathShape::get_num_waypoints()
2247
*- - diguyPathShape::get_waypoint_at_index()
2248
*- - diguyPathShape::create_waypoint()
2249
*<
2250
*- - Added new diguyCharacterPathActionBead class. Members are:
2251
*>
2252
*- - diguyCharacterPathActionBead::get_name()
2253
*- - diguyCharacterPathActionBead::get_action()
2254
*- - diguyCharacterPathActionBead::set_action()
2255
*- - diguyCharacterPathActionBead::get_distance_into_path()
2256
*- - diguyCharacterPathActionBead::set_distance_into_path()
2257
*- - diguyCharacterPathActionBead::get_length()
2258
*- - diguyCharacterPathActionBead::set_length()
2259
*- - diguyCharacterPathActionBead::get_derive_length_flag()
2260
*- - diguyCharacterPathActionBead::set_derive_length_flag()
2261
*- - diguyCharacterPathActionBead::get_tin()
2262
*- - diguyCharacterPathActionBead::set_tin()
2263
*- - diguyCharacterPathActionBead::get_duration()
2264
*- - diguyCharacterPathActionBead::set_duration()
2265
*- - diguyCharacterPathActionBead::get_derive_duration_flag()
2266
*- - diguyCharacterPathActionBead::set_derive_duration_flag()
2267
*- - diguyCharacterPathActionBead::get_desired_duration()
2268
*- - diguyCharacterPathActionBead::set_desired_duration()
2269
*- - diguyCharacterPathActionBead::get_derive_desired_duration_flag()
2270
*- - diguyCharacterPathActionBead::set_derive_desired_duration_flag()
2271
*- - diguyCharacterPathActionBead::get_motion_reps()
2272
*- - diguyCharacterPathActionBead::set_motion_reps()
2273
*- - diguyCharacterPathActionBead::get_derive_motion_reps_flag()
2274
*- - diguyCharacterPathActionBead::set_derive_motion_reps_flag()
2275
*- - diguyCharacterPathActionBead::get_transition_before_bead_flag()
2276
*- - diguyCharacterPathActionBead::set_transition_before_bead_flag()
2277
*<
2278
*- - Added new diguyCharacterPathScriptBead class. Members are:
2279
*>
2280
*- - diguyCharacterPathScriptBead::get_name()
2281
*- - diguyCharacterPathScriptBead::set_name()
2282
*- - diguyCharacterPathScriptBead::get_script()
2283
*- - diguyCharacterPathScriptBead::set_script()
2284
*- - diguyCharacterPathScriptBead::get_distance_into_path()
2285
*- - diguyCharacterPathScriptBead::set_distance_into_path()
2286
*- - diguyCharacterPathScriptBead::get_length()
2287
*- - diguyCharacterPathScriptBead::set_length()
2288
*- - diguyCharacterPathScriptBead::get_tin()
2289
*- - diguyCharacterPathScriptBead::set_tin()
2290
*- - diguyCharacterPathScriptBead::get_duration()
2291
*- - diguyCharacterPathScriptBead::set_duration()
2292
*<
2293
*- - Changed API of diguyWaypoint object to have more intuitive function
2294
*- names. Old function names have been deprecated but will still work.
2295
*- - Improved behavior of reflected characters when the remote scenario is
2296
*- reset. After remote reset, on remote play, local reflected
2297
*- characters now immediately perform their desired actions rather than
2298
*- gradually transitioning into them.
2299
*- - Switched to using asynchronous I/O for DIS networking. This improves
2300
*- DI-Guy's robustness on networks with lots of entities.
2301
*- - Fixed problem with diguyPathShape::get_length(). The
2302
*- diguyPathShape::update() function must be called after waypoints have
2303
*- been added to the path shape for the length to be updated. After
2304
*- the update() call, get_length() will return a valid length. (PR 2852)
2305
*- - Fixed problem with diguyCharacter::get_current_path_index()
2306
*- function. The value 0 was being returned when the character was not
2307
*- on a path, and when the character was on the first path. The return
2308
*- value for "not on a path" has been changed to -1. (PR 2856)
2309
*- - Fixed problem with diguyCharacter::get_path_name_at_index() function.
2310
*- An empty string was being returned when the path at the specified
2311
*- index had a zero-length name, and when there was no path at the
2312
*- specified index. The return value for no path at index has been
2313
*- changed to NULL.
2314
*- - Fixed problem which, under DIS using DI-Guy custom information,
2315
*- caused newly created reflected characters not to receive custom action
2316
*- information for up to five seconds. Now custom action information is
2317
*- sent immediately after the first entity state PDU is sent.
2318
**
2319
** \subsubsection v531 Version 5.3.1
2320
**
2321
*- - Added support for "live reckoning". Live reckoning provides more
2322
*- accurate display of the behavior of remote characters, using less
2323
*- networking bandwidth.
2324
*- - Added network support for multiple concurrent scenario instances.
2325
*- Characters in all scenarios are published to the network. Incoming
2326
*- entities are created in the scenario which is passed to
2327
*- diguy_dis_go_online() or diguy_hla_go_online().
2328
*- - Improved behavior of reflected entities when the local scenario is
2329
*- reset.
2330
*- - Removed some options from network.cfg. It is recommended that the
2331
*- current network.cfg be deleted and let DI-Guy recreate it.
2332
*- - Improved behavior of reflected entities when the remote scenario is
2333
*- paused. Now they can move to their correct location even when
2334
*- paused, rather than staying still in a location that is suboptimal.
2335
*- - Fixed bug preventing incoming (reflected) non-soldier characters from
2336
*- walking when DI-Guy custom action information is not available.
2337
*- - Removed Review Data dt data member from diguyScenario objects
2338
*- and from the DI-Guy Scenario UI. Any scenario review data is
2339
*- now recorded at the scenario's tick dt.
2340
*- - Added access to the DirectX 9 world stack used by DI-Guy through
2341
*- the new function diguy_dx9_get_world_stack(). This allows users
2342
*- of DI-Guy for DirectX 9 to offset the origin used by characters
2343
*- from 0,0,0. Use of the new function is demonstrated in the
2344
*- example program $DIGUY/programming_examples/diguy_dx9/offset_example.
2345
*- - Made it possible to set the tick dt of a scenario using the
2346
*- function diguyScenario::set_tick_dt(). This was previously
2347
*- possible only in the DI-Guy Scenario UI.
2348
*- - Made it possible to turn off review data generation for scenarios.
2349
*- By default, scenarios created in the DI-Guy Scenario editor will
2350
*- have review data enabled; scenarios created using the DI-Guy API
2351
*- will have review data disabled. Turning on review data can add
2352
*- significantly to memory usage. Changing review data settings can
2353
*- be done using the function diguyScenario::set_history_type().
2354
*- - Turned off review data by default for characters created using the
2355
*- DI-Guy API. The significantly reduces the memory overhead of each
2356
*- character. Review data can be re-enabled using the function
2357
*- diguyCharacter::set_history_type().
2358
*- - Added new callbacks for use with the diguyCharacter::add_callback()
2359
*- function:
2360
*>
2361
*- - CALLBACK_ID_PRE_DIE
2362
*- - CALLBACK_ID_POST_DIE
2363
*- - CALLBACK_ID_PRE_FIRE_WEAPON
2364
*- - CALLBACK_ID_POST_FIRE_WEAPON
2365
*<
2366
*- - Fixed problem with setting character's current appearance too soon
2367
*- after the character was created. This caused a crash.
2368
**
2369
** \subsubsection v522 Version 5.2.2
2370
**
2371
*- - New function diguyCharacter::set_weapon_fires_live_rounds() sets
2372
*- whether firing causes collision search for characters to be killed.
2373
*- Default is to fire blanks. Old scenarios that used this
2374
*- functionality need to call this function to re-enable firing to kill
2375
*- other characters.
2376
*- - Fixed problem for expressive faces in Vega. If a model without
2377
*- texture or material was drawn just before the expressive face,
2378
*- the expressive face would inherit its color.
2379
*- - Fixed various memory leaks.
2380
**
2381
** \subsubsection v521 Version 5.2.1
2382
**
2383
*- - Improved DIS/HLA Networking:
2384
*>
2385
*- - Motion behavior improved when receiving standard PDUs in DIS.
2386
*- - Motion behavior improved when not using DI-Guy Custom FOM in HLA.
2387
*<
2388
*- - Improved vpNet/DI-Guy for Vega Prime interaction:
2389
*>
2390
*- - DI-Guy for Vega Prime now shares the network connection created
2391
*- by vpNet (MaK Technologies networking add-on to
2392
*- MultiGen-Paradigm's Vega Prime product).
2393
*- - Special programming no longer required to have DI-Guy for Vega
2394
*- Prime/vpNet work together.
2395
*- - Users need to maintain two separate modelmaps, but mapping to
2396
*- NULL is now implemented for both vpNet and DI-Guy, so that
2397
*- entities being drawn by other modules in Vega will not be
2398
*- drawn a second time by DI-Guy for Vega Prime and vice-versa.
2399
*- - Programming examples have been expanded to show simple
2400
*- examples of vpNet/DI-Guy for Vega Prime interaction. Note
2401
*- that these programming examples are copied to the samples
2402
*- directory of the Vega Prime installation.
2403
*- - Added function call diguy_net_get_character_from_id()
2404
*- which returns the diguyCharacter associated with the entity id.
2405
*- Works with both DIS and HLA. (see ref. manual).
2406
*- - Added option hla_advisories to network.cfg. When using HLA,
2407
*- if the RTI uses advisories, hla_advisories should be set to 1.
2408
*- If not, set this to zero. Mismatch between the settings should
2409
*- be avoided.
2410
*<
2411
*- - Fixed problem for expressive faces in Vega. The normals
2412
*- on the head were being scaled incorrectly, causing strange
2413
*- shading artifacts.
2414
*- - Fixed problem for expressive faces in Vega. If more than one
2415
*- expressive face was in a scene, all expressive faces would
2416
*- use the texture of the first expressive face.
2417
**
2418
** \subsubsection v520 Version 5.2.0
2419
**
2420
*- - Added dynamic (dll) versions of DI-Guy libraries for win32.
2421
*- - Discontinued support of MT and MTd versions of DI-Guy libraries for
2422
*- win32.
2423
*- - Fixed nmake-based makefiles for win32 programming examples
2424
*- so that they'll work if DI-Guy is installed in a directory with
2425
*- spaces.
2426
**
2427
** \subsubsection v5125 Version 5.1.25
2428
**
2429
*- - Initial release of version 5.1.
2430
**
2431
** \subsubsection v5124 Versions 5.1.0 - 5.1.24
2432
**
2433
*- - These versions are 5.1 pre-releases.
2434
**
2435
**
2436
**************************************
2437
** \section v9digs DI-Guy Scenario Version 9 and earlier
2438
**************************************
2439
**
2440
*b Note that most changes to the DI-Guy API also apply to DI-Guy Scenario.
2441
**
2442
** \subsection v90digs Version 9.0
2443
**
2444
** \subsubsection v914digs Version 9.1.4
2445
**
2446
*- - Scenario can now be stopped, run, and reset in I-Guy Input
2447
*- Mode by hitting Shift-Space (toggle stop and run) an Shift-Ctrl-Space
2448
*- (reset). Keyboard reset can be disabled in I-Guy mode in the I-Guy
2449
*- Page.
2450
**
2451
** \subsubsection v910digs Version 9.1.0
2452
**
2453
*- - Large rework of Object pages. There is now one Scenario Objects page
2454
*- that contains all of the pages from previous versions' Scenario
2455
*- Elements, Character Elements, View Settings, Event Handlers, and
2456
*- DI-Guy AI Elements. Pages are separated into multiple tab groups.
2457
**
2458
** \subsubsection v902digs Version 9.0.2
2459
**
2460
*- - Fixed bug where network page wouldn't remember current coordinate
2461
*- converter settings when closed and reopened.
2462
**
2463
** \subsubsection v900digs Version 9.0.0
2464
**
2465
*- - Near and far parameters of character weapon parameters are now
2466
*- always enabled, and will alway be taken into consideration.
2467
*- Before they only had an effect if the "spread" of a weapon was
2468
*- greater than 0.
2469
*- - New command line flag added: -runtime_only. If this flag is
2470
*- specified, DI-Guy Scenario will not attempt to check out the
2471
*- development license feature but instead will remain in runtime mode,
2472
*- leaving the development license available to another program.
2473
**
2474
**
2475
** \subsection v80digs Version 8.0
2476
**
2477
** \subsubsection v863digs Version 8.6.3
2478
**
2479
*- - Changing a character's character type no longer deletes all action
2480
*- beads. The actions of the existing beads are changed to the nearest
2481
*- equivalent of the new character type.
2482
*- - Region/crowd painting now works on scene object grids. delayed
2483
*- loading of grids should be more responsive as well.
2484
*- - Fixed issues with feelers: changes made via UI now change all crowd
2485
*- members, 3D rep of feelers now updated immediately when changed and
2486
*- on reset.
2487
*- - Fixed set_playback_mode_play() so that it works in decisions.
2488
*- - Ctrl-a will now restore previous visibility settings if hit 2 times
2489
*- in a row.
2490
*- - Added experimental feeler callback option.
2491
*- - Minor UI preference bug fixes.
2492
**
2493
** \subsubsection v862digs Version 8.6.2
2494
**
2495
*- - Improved speed of particle system rendering.
2496
*- - Fixes to scene object grid rendering.
2497
*- - Fixed problem that character initial path could not be deleted.
2498
*- - If last character path is deleted, initial position and orientation
2499
*- controls now become enabled as they should.
2500
*- - Added preference for changing the fast-forward playback factor.
2501
*- Default is 4. Can be changed in the Preferences dialog.
2502
*- - Symbolic View: Characters merging into a crowd symbol should now work
2503
*- outside of ortho_xy view.
2504
*- - 3d UI: Added right click pop-up menu to character mode.
2505
*- - Added smoothing to ground clamp function.
2506
**
2507
** \subsubsection v861digs Version 8.6.1
2508
**
2509
*- - Added one click movie creation to DI-Guy Scenario.
2510
*- - More of the UI has up/down sorting arrows.
2511
*- - Added is_speaking as a decision bead query.
2512
*- - Fixed bug with "this_character" not properly having sub-objects
2513
*- listed in decision beads.
2514
*- - Added the ability for labels to reflect character state, accessible
2515
*- in the character label UI.
2516
*- - Fixed math issues with scene object sub-culling, feature should be
2517
*- significantly more robust with scaled and rotated scene objects.
2518
*- - Character's added to dynamic octtree and scene object characters
2519
*- should require less memory, and be more efficient.
2520
*- - Minor improvements to advanced light UI.
2521
*- - Action bead page now lists the current action's information.
2522
*- - Fixed bug where 1st person I-Guy could not be killed.
2523
*- - Better performance when populating or repopulating crowds.
2524
*-
2525
**
2526
** \subsubsection v850digs Version 8.5.0
2527
**
2528
*- - Initial DI-Guy SAF release.
2529
*- - Added new SAF Elements palette that provides access to DI-Guy SAF
2530
*- objects.
2531
*- - Added shortcut ctrl-a: turns off *all* supplemental visuals,
2532
*- providing better viewing for non-demo scenario run.
2533
*- - Added "Ortho XY" Projection Mode to Camera settings. This provides
2534
*- an alternative planview that uses an orthonormal projection rather
2535
*- that a perspective-based one.
2536
*- - Added "Symbolic View" checkbox to Camera settings. When this is
2537
*- checked characters will be represented as flat polygons rather than
2538
*- their full animated graphics. This, along with the Ortho XY
2539
*- Projection Mode, provides a good SAF-like view of a scenario.
2540
**
2541
** \subsubsection v803digs Version 8.0.3
2542
**
2543
*- - Fixed issue with I-Guy not using a joystick for input, even through
2544
*- the UI says it is enabled.
2545
*- - Fixed issue with children's bounding volumes not being factored into
2546
*- culling calculation.
2547
*- - User interface polish:
2548
*>
2549
*- - Added more context sensitive input mode buttons.
2550
*- - Labels identifying what character and path is selected have
2551
*- been replaced with combo boxes, allowing for faster editing of
2552
*- complex scenarios.
2553
*- - Fixed various other small UI issues.
2554
*<
2555
** \subsubsection v802digs Version 8.0.2
2556
**
2557
*- - Fixed issue with sound not playing properly when scenario is
2558
*- fast-forwarded.
2559
*- - Fixed issues with jittery camera in I-Guy 3rd person mode.
2560
*- - Multisync masters now send and receive characters over the network.
2561
**
2562
** \subsubsection v800digs Version 8.0.0
2563
**
2564
*- - Initial 8.0 release candidate.
2565
*- - Improved plugin interface so that existing plugin name can be
2566
*- changed instead of just being deleted and a new one created.
2567
*- - DI-Guy plugin libraries can now be browsed for in the Plugins page,
2568
*- instead of just typing in the library name.
2569
*- - Added limits to the Tick dt parameter in the Performance page.
2570
*- The Tick dt must now be >= 0.01 seconds, and <= 0.1 seconds.
2571
**
2572
**
2573
** \subsection v70digs Version 7.0
2574
**
2575
** \subsubsection v7119digs Version 7.1.19
2576
**
2577
*- - Made improvements to DI-Guys sound system, sounds will now pause
2578
*- along with the scenario and can now be fast forwarded and rewound
2579
*- (to a degree).
2580
*-
2581
** \subsubsection v7116digs Version 7.1.16
2582
**
2583
*- - Added 'Init. Up Vector' combo box to Character page. Allows
2584
*- user to set the up vector that the character will use. Previously
2585
*- this could only be done via script of decision.
2586
**
2587
** \subsubsection v7115digs Version 7.1.15
2588
**
2589
*- - Added '-safe_mode' flag to command line. Passing this flag on
2590
*- the command line will cause DI-Guy Scenario to start up using
2591
*- default preferences, which may resolve some unexpected issues.
2592
**
2593
** \subsubsection v7114digs Version 7.1.14
2594
**
2595
*- - Added chain settings to Merge Settings UI.
2596
*- - Fixed issues with selecting a different path by clicking on
2597
*- one of its waypoints in Path Edit Input Mode.
2598
**
2599
** \subsubsection v7112digs Version 7.1.12
2600
**
2601
*- - Review data for new scenarios is now turned off by default.
2602
*- - New characters created in DI-Guy scenario now have no review data
2603
*- by default. Characters from existing scenarios will not be
2604
*- affected. Note that this removes the ability to rewind scenarios
2605
*- unless some review data is turned back on.
2606
**
2607
** \subsubsection v7111digs Version 7.1.11
2608
**
2609
*- - Sounds now stop when a scenario loops or is rewound. Added a
2610
*- 'Stop All Sounds' button to the Scenario palette Sound page,
2611
*- to make it easier to stop playing long sounds.
2612
*- - Window menu now always opens UI windows instead of toggling whether
2613
*- they are shown or hidden. If a window is already open, it is
2614
*- brought to the top of the window stack.
2615
*- - The F-key shortcuts for opening UI windows have changed behavior.
2616
*- Pressing F2 for the Time Control window, for example, will make
2617
*- the Time Control window visible by either opening it or bringing it
2618
*- to the top. Old behavior toggled whether windows were shown or
2619
*- hidden. Use Shift-F-key to use old toggle behavior (hide if
2620
*- showing, show if hidden).
2621
*- - Character Labels Visibility is now set to 'None' in the default
2622
*- .dss file.
2623
**
2624
** \subsubsection v718digs Version 7.1.8
2625
**
2626
*- - Fixed problem with restoring all event mappings when reloading
2627
*- a previously saved scenario.
2628
**
2629
** \subsubsection v717digs Version 7.1.7
2630
**
2631
*- - Switch to new installer setup. Should better detect and remove
2632
*- previous versions, and in general be more stable.
2633
*- - Added preliminary support for TerraPage .txp files in scene objects.
2634
*- - Fixed issue with OpenAL not being able to play sounds on some
2635
*- machines.
2636
**
2637
** \subsubsection v716digs Version 7.1.6
2638
**
2639
*- - Added 3rd Parameter to Decision Beads.
2640
*- - Added diguyCharacter::create_and_force_bridge_spath() and
2641
*- diguyCharacter::force_local_path to Decision Beads editor.
2642
*- - Application now asks user to confirm whether an existing
2643
*- file can be overwritten when Save As is selected.
2644
*- - Added Comment field to Decisions and Decision Beads.
2645
*- - Added new cursor to represent current input mode.
2646
*- - Added events page to character as well as signal and sensor region.
2647
*- Same basic functionality as the event mapper but more distributed
2648
*- UI design.
2649
**
2650
** \subsubsection v714digs Version 7.1.4
2651
**
2652
*- - Added functionality to the character elements page that allows
2653
*- character list to be reordered using up and down arrows next to
2654
*- the list box.
2655
*- - Character list box will now display disabled characters in gray.
2656
**
2657
** \subsubsection v713digs Version 7.1.3
2658
**
2659
*- - Added offset XYZ line edits for aiming at characters on Aim
2660
*- Bead page.
2661
**
2662
** \subsubsection v712digs Version 7.1.2
2663
**
2664
*- - Added new "Character" Input Mode. While in this mode clicks and
2665
*- drags will have the following effects:
2666
*>
2667
*a click and drag - translate character
2668
*a shift-click and drag - rotate character
2669
*<
2670
*- - Made 'Delete' key work on more object types in the 3D window,
2671
*- depending on the current Input Mode:
2672
*>
2673
*a Character or PeopleBlitzer - delete current character
2674
*a Path Edit or Path Insert - delete current waypoint
2675
*a Action Edit or Action Insert - delete current action bead
2676
*a Sensor Edit or Sensor Insert - delete current sensor region
2677
*a Group - delete current group
2678
*<
2679
**
2680
** \subsubsection v711digs Version 7.1.1
2681
**
2682
*- - Added new "Group" Input Mode. While in the mode clicks and
2683
*- drags will have the following effects:
2684
*>
2685
*a click and drag - translate all group characters
2686
*a shift-click and drag - rotate all group characters
2687
*a ctrl-click - add or remove clicked character
2688
*a to group
2689
*<
2690
*- - Added Chain Sim Settings page to the Scenario Elements palette.
2691
*- - Added edit boxes to event beads (Aim, Decision, Gaze, and Script
2692
*- beads) that allow beginning and end of beads to be tied to
2693
*- specific waypoints or action beads.
2694
*- - Added ability to set character label colors on the Character page.
2695
*- - Added optional labels for action beads in the 3D window that show
2696
*- the action name and the time at which the action begins.
2697
*- - Current selected character index is now saved in .dss file and
2698
*- restored when the scenario is loaded.
2699
*- - Revamped Plugins page. Each plugin now has these parameters:
2700
*>
2701
*a Required By Scenario - If checked, this plugin is required
2702
*a for proper execution of this scenario.
2703
*a When the scenario is loaded this plugin
2704
*a will be loaded as well if it is not
2705
*a already active. Default is unchecked.
2706
*a Unload on Scenario Close - If checked, this plugin will be
2707
*a unloaded if this scenario is closed
2708
*a or a new scenario is opened. Default
2709
*a is unchecked.
2710
*a Accepts Mouse Input - If checked, this plugin will receive
2711
*a mouse events via the mouse plugin
2712
*a functions when the input mode is
2713
*a "Plugin". Default is checked.
2714
*<
2715
*- - Added new camera frustum culling functionality that works on the
2716
*- subshapes of a scene object. The functionality can be turned on
2717
*- via a check box in the performance page, or via
2718
*- diguyScenario::set_scene_object_sub_culling_enabled() and
2719
*- diguyScenario::get_scene_object_sub_culling_enabled().
2720
*- Potentially this can lead to 100%-200% rendering speed increase
2721
*- for large well segmented terrains. Note currently scene object
2722
*- culling must be on for this to work.
2723
**
2724
** \subsubsection v710digs Version 7.1.0
2725
**
2726
*- - Revamped Cut and Paste operations to use the merge functionality
2727
*- that makes sure objects added to a scenario have unique names.
2728
**
2729
** \subsubsection v708digs Version 7.0.8
2730
**
2731
*- - Camera speed UI input was broken, should be responsive again
2732
*- - Hitting cancel in particle system texture map property widget will
2733
*- no longer delete the currently selected texture.
2734
*- - Fixed Camera Affected by Script events check box; was actually an
2735
*- SDK fix.
2736
**
2737
** \subsubsection v705digs Version 7.0.5
2738
**
2739
*- - Enhanced character path following so that waypoints that
2740
*- have a roll parameter specified will roll the character
2741
*- as it travels along the path.
2742
*- - Enhanced character path following so that characters can
2743
*- now pitch "upside-down" along paths.
2744
**
2745
** \subsubsection v703digs Version 7.0.3
2746
**
2747
*- - Look At button now works for reflected characters.
2748
**
2749
** \subsubsection v701digs Version 7.0.1
2750
**
2751
*- - Velocity Noise on particles will now get transformed with the
2752
*- parent's orientation.
2753
*- - Fixed problems with various guide algorithms not working well
2754
*- if the desired z coordinate is not at the same altitude as the
2755
*- character.
2756
*- - Re-enabled "-C cfg_file" command line flag.
2757
**
2758
**
2759
** \subsection v60 Version 6.0
2760
**
2761
** \subsubsection v6110digs Version 6.1.10
2762
**
2763
*- - Fixed problem that prevented some parameters from being
2764
*- editable in the Decision editor; in particular, when param 2
2765
*- was an appearance or a string.
2766
*- - Fixed aim trajectory rendering to more consistently render
2767
*- and use the proper color.
2768
*- - Fixed problem with I-Guy characters not being able to move
2769
*- forward and back.
2770
*- - Particles are more aggressive about requesting that octtree is
2771
*- rebuilt.
2772
*- - High velocity particles, stuck particles and bouncing particles all
2773
*- interact better after colliding with scene geometry.
2774
*- - BDI_LOG_FATAL errors will behave better in DI-Scenario, giving the
2775
*- option to save before exiting.
2776
*- - Fixed decision beads pseudocode description crash.
2777
**
2778
** \subsubsection v619digs Version 6.1.9
2779
**
2780
*- - Fixed problem with OpenGL renderer that prevented objects
2781
*- with subfaces from rendering correctly.
2782
*- - Fixed problem with Draw Mode radio buttons in the Preferences
2783
*- dialog not having the correct effect on rendering.
2784
*- - Changed info popups to show up as dialog windows separate
2785
*- from the main window. This prevents the Primary 3D Window
2786
*- from un-maximizing when an info popup pops up.
2787
*- - Fixed problem that scene objects did not correctly look in
2788
*- custom directory for models.
2789
*- - Added code to check positions of DI-Guy Scenario windows;
2790
*- if windows will not be visible (are off-screen, etc.), they
2791
*- are moved to screen coordinate 0,0.
2792
*- - Updated Networking Settings page to be consistent with V6 UI.
2793
*- - Numerous fixes to Networking Settings page.
2794
*- - Added About box with version information.
2795
*- - Fixed bug that preferences weren't correctly saved if app
2796
*- was closed by clicking 'X' button in upper right corner.
2797
*- - Fixed various problems with values entered into edit boxes
2798
*- being clobbered.
2799
*- - Added plugins page to DI-Guy Scenario to match page from V6 UI.
2800
**
2801
** \subsubsection v618digs Version 6.1.8
2802
**
2803
*- - Fixed world space collisions for particles, functionality was
2804
*- temporally broken.
2805
*- - Particle UI should be now be almost entirely working in DI-Guy
2806
*- Scenario.
2807
*>
2808
*- - Added load particle descriptions button to UI.
2809
*- - Added collision plane rendering check box to UI.
2810
*- - Added check box to particle page that optionally turns off
2811
*- placeholders.
2812
*- - Added orientation flag to particles, useful for parented
2813
*- emitters.
2814
*- - Renaming particles should validate names and echo to other
2815
*- appearance menus.
2816
*- - Adding or removing particle descriptions now properly updates
2817
*- the appearance section of the character page and people blitzer.
2818
*- - Particle manager was getting updated unnecessarily causing
2819
*- particles to playback 2x as fast.
2820
*<
2821
*- - Fixed a focus out problem that yielded a hard lock up if a load
2822
*- manager error message was produced.
2823
*- - Waypoints and sensor regions visuals weren't being properly
2824
*- updated when data changed.
2825
*- - Editing a Scene object triggers the unsaved flag more often.
2826
*- - Fixed a glitch where shadows and the profiler wouldn't work
2827
*- together.
2828
*- - Added UI for setting character and scene object culling active.
2829
*- - Added UI for setting character and scene object bounding volume
2830
*- visualization active.
2831
*-
2832
** \subsubsection v617digs Version 6.1.7
2833
**
2834
*- - Added UI for setting the character's label text and controlling
2835
*- whether the label is visible to the Character page.
2836
*- - Added new visibility option for Character Labels on the
2837
*- Visibility page: Per Object.
2838
*- - Major reworking of the DI-Guy Scenario user interface in
2839
*- preparation for the DI-Guy 7 release.
2840
*- A version of the program with the old interface (henceforth
2841
*- called the V6 UI) will be available in releases for awhile
2842
*- with a different filename. As time goes on new features that
2843
*- appear in DI-Guy Scenario may not appear in the V6 UI.
2844
*- - Changed the sound module of DI-Guy Scenario to be based on
2845
*- OpenAL. This fixed a problem with sounds playing back too
2846
*- fast on certain systems, and allows for 3D position sounds.
2847
**
2848
** \subsubsection v616digs Version 6.1.6
2849
**
2850
*- - Added "+plugin <plugin_name>" command line argument. This will
2851
*- load the specified plugin as the application is starting up.
2852
*- This is essentially the same as calling diguyApp::load_plugin()
2853
*- before the initial scenario is created.
2854
*- - Added "Plugin" page. This allows a scenario designer to specify
2855
*- which plugins are required for proper execution of the scenario.
2856
*- - Fixed crash bug that occasionally occurred when the "Trigger Now"
2857
*- button was clicked on the Script and Decision pages.
2858
*- - Added UTM Coordinates to the Networking page.
2859
*- - Added "Decisions", which are similar to Script Events but
2860
*- have a UI for constructing logic similar to Decision Beads.
2861
**
2862
** \subsubsection v614digs Version 6.1.4
2863
**
2864
*- - Fixed minor problems with decision bead page. The parameters for
2865
*- the sensor region function
2866
*- contains_character_by_type_and_appearance() did not include
2867
*- quotes and were not alphabetized.
2868
*- - Added buttons "Add All" and "Remove All" to Group page.
2869
**
2870
** \subsubsection v611digs Version 6.1.1
2871
**
2872
*- - Added Load Manager page to the Scenario window. Now users can
2873
*- enable load management, and adjust load management parameters
2874
*- from within DI-Guy Scenario.
2875
*- - Particle warm up time should now work properly on reset.
2876
*- - Added particle system life time, after which it will no longer emit
2877
*- particles.
2878
*- - Added new Particle position and velocity noise options, should allow
2879
*- for better control and movement options.
2880
*- - Added character variable querying to decision beads, can now query
2881
*- variables with: variable_equal_to_(float, int, string),
2882
*- variable_less_than_(float, int, string) and
2883
*- variable_greater_than_(float, int, string).
2884
*- - Added character variable actions to decision beads, can now have
2885
*- actions that affect variables, using
2886
*- variable_set_value_as_(float, int, string) and
2887
*- variable_increment and decrement.
2888
*- string) and variable_greater_than_(float, int, string).
2889
*- - Can now use decision beads to check whether someone's been shot,
2890
*- as well as where the shot hit.
2891
*- - Changed how decision beads get pointers to objects; previously
2892
*- if an object was referenced multiple times in a decision bead
2893
*- (e.g., multiple queries were made of character "soldier-1" in
2894
*- the if clauses), the same object was searched for multiple times.
2895
*- Now a pointer to the object is just searched for once.
2896
*- - Added Variable page to Character window. This page allows for
2897
*- creation, deletion, and editing of character variables. Character
2898
*- variables are almost exactly the same as scenario variables, but
2899
*- are private to each character instead of being shared across the
2900
*- entire scenario.
2901
**
2902
** \subsubsection v610digs Version 6.1.0
2903
**
2904
*- - Ctrl-'u' now pushes a scenario undo onto the undo stack.
2905
*- - Space bar toggles between play and pause; Ctrl-space bar does a
2906
*- reset.
2907
**
2908
** \subsubsection v608digs Version 6.0.8
2909
**
2910
*- - DI-Guy Scenario now properly sets the network Force ID for
2911
*- outgoing entities based on group membership. Groups
2912
*- net_friendly, net_opposing, and net_neutral should be used to
2913
*- indicate the Force ID of outgoing entities.
2914
*- - DI-Guy Scenario now assigns incoming entities to group
2915
*- net_friendly, net_opposing, or net_neutral based on the
2916
*- incoming Force ID.
2917
*- - Incoming entities cannot now be assigned to or removed from
2918
*- groups. As well, groups to which incoming entities belong
2919
*- cannot be deleted.
2920
**
2921
** \subsubsection v602digs Version 6.0.2
2922
**
2923
*- - Fixed problem with "Deflate" compression method for movie frame
2924
*- capture.
2925
*- - Changed label of "Reset" button on Movie Settings page to "Reset
2926
*- Next Frame Number", to differentiate it from the Reset button
2927
*- on the Control palette.
2928
**
2929
** \subsubsection v601digs Version 6.0.1
2930
**
2931
*- - Added setting of Scenario Review Data on Scenario Performance
2932
*- page to .dss file. It was not being saved and restored as
2933
*- scenarios were saved and loaded.
2934
*- - Changed scenario "Loop" functionality. If no characters have
2935
*- review data, the scenario will reset and play rather than
2936
*- rewind and show review data.
2937
*- - Removed unused "Altitude" edit box from Networking property page.
2938
*- (PR 3002)
2939
*- - Changed gaze bead logic so that faster gazes are possible. The
2940
*- desired locate time for gaze beads was effectively limiting the
2941
*- maximum angular velocity. Now if a gaze bead overrides gaze
2942
*- parameters, it also turns off use of the desired locate time for
2943
*- each link. (PR 3030)
2944
**
2945
** \subsubsection v600digs Version 6.0.0
2946
**
2947
*- - Added "GoThere" camera movement. In Camera mode, if there is
2948
*- neither a Look At character nor a Look From character selected
2949
*- and the camera projection mode is "free camera", if you hold
2950
*- the Shift key and left-click on anything in the scene, the
2951
*- camera will rapidly travel to what you Shift+clicked on and
2952
*- turn around to face the location from which the camera came.
2953
*- This also works from modes other than camera mode, if you press
2954
*- and hold Alt+Shift while left-clicking.
2955
*- - Changed Aim Bead UI to match Gaze Bead UI. Note that now
2956
*- aiming is also precise, and dynamic. See DI-Guy aiming change
2957
*- above.
2958
*- - Fixed problem with current light and fog settings being overwritten
2959
*- when a .dss file was loaded. (PR 2019)
2960
*- - Fixed problem with primary view of scenario returning 0 when
2961
*- diguyScenarioView::is_showing() was called on it. The correct
2962
*- value is now returned. (PR 2954)
2963
*- - Added ability to change window title of primary view using the
2964
*- call diguyView::set_window_title(). (PR 2953)
2965
*- - Fixed problem with looking at scene objects that are translated
2966
*- away from the origin. (PR 2722)
2967
*- - Fixed problem for character paths on load. Paths that weren't
2968
*- the initial path of the character weren't being fully initialized
2969
*- until they were used by the character. Now all paths receive
2970
*- an initial update call on load.
2971
*- (PR 2791)
2972
*- - Added new command line argument: -no_info_popup_server. Adding
2973
*- this argument to the command line causes DI-Guy Scenario to not
2974
*- attempt to start the program DIGuyInfoPopupServer. If the
2975
*- server is not started, info popup windows will not appear.
2976
*- - Fixed problem that if the Initial Script Filename on the Script
2977
*- Event property page specified a script that didn't exist,
2978
*- no warning was given. Now a log message at Warn level is
2979
*- printed for a missing script file. (PR 2826)
2980
*- - Fixed problem that prevented Performance settings from taking
2981
*- effect unless the scenario was saved and reloaded.
2982
*- - Added edit box for setting character's initial motion texture
2983
*- gain. (PR 2845)
2984
*- - Added UI preference for turning off the "DI-Guy Scenario by
2985
*- Boston Dynamics" overlay.
2986
**
2987
**
2988
** \subsection v50digs Version 5.0
2989
**
2990
** \subsubsection v535digs Version 5.3.5
2991
**
2992
*- - Changed edit box for setting character's initial motion texture
2993
*- into a combo box that shows which motion textures are available.
2994
**
2995
** \subsubsection v532digs Version 5.3.2
2996
**
2997
*- - Small improvement to particle system UI, fixed outstanding issues
2998
*- with texture map browser widget. Color Widgets go right to a color
2999
*- picker. Clicking on static text opens subitems.
3000
*- - Particle Systems now populate better between ticks, i.e. release
3001
*- intervals smaller then the update time now work.
3002
*- - Performance improvements to the particle systems.
3003
**
3004
** \subsubsection v531digs Version 5.3.1
3005
**
3006
*- - Removed Review Data dt data member from diguyScenario objects
3007
*- and from the DI-Guy Scenario UI. Any scenario review data is
3008
*- now recorded at the scenario's tick dt.
3009
*- - Split Visibility / Performance page into two separate
3010
*- pages named Visibility and Performance.
3011
**
3012
** \subsubsection v530digs Version 5.3.0
3013
**
3014
*- - Made it possible to turn off review data generation for scenarios.
3015
*- By default, scenarios created in the DI-Guy Scenario editor will
3016
*- have review data enabled; scenarios created using the DI-Guy API
3017
*- will have review data disabled. Turning on review data can add
3018
*- significantly to memory usage. Changing review data settings can
3019
*- be done using the function diguyScenario::set_history_type(), or
3020
*- using the Review Data Type radio buttons on the Visibility /
3021
*- Performance page of the DI-Guy Scenario editor.
3022
**
3023
** \subsubsection v523digs Version 5.2.3
3024
**
3025
*- - Added joystick gain settings to Preferences. The gains allow
3026
*- DI-Guy Scenario users to adjust how sensitive the joystick will
3027
*- be. Gains of 1.0 retain previous behaviors. Gains less than
3028
*- 1.0 make joystick control less sensitive; i.e., it will take a
3029
*- larger movement to achieve a response. Gains more than
3030
*- 1.0 make joystick control more sensitive; i.e., it will take a
3031
*- smaller movement to achieve a response.
3032
**
3033
** \subsubsection v521digs Version 5.2.1
3034
**
3035
*- - Special Effects: DI-Guy Scenario now offers a new add-on option for
3036
*- particle-based special effects. Examples of particle effects include
3037
*- smoke, fire, debris, missile trails, rotor wash, explosions, and dust
3038
*- trails. A Particles tab is now available in the Scenario palette for
3039
*- easy control of effects parameters include size, number, color,
3040
*- texture map, velocity, wind effect, and gravity.
3041
*- - Fixed crashing bug when undoing path changes.
3042
*- - Fixed minor issues with using soldier character
3043
*- backward actions and companion waypoints.
3044
*- - Fixed problem where character sounds were not consistently
3045
*- playing when a scenario looped.
3046
*- - Fixed problem where path shapes were not always being drawn
3047
*- when they should have been.
3048
*- - Fixed problem where having path shapes in a scenario caused
3049
*- the program to crash on exit.
3050
*- - Fixed crashing bug when shutting down a scenario that
3051
*- contains characters with guides.
3052
**
3053
** \subsubsection v520digs Version 5.2.0
3054
**
3055
*- - Added ability to show character names as floating
3056
*- labels next to the character in the 3D window.
3057
*- Name labels can be shown for current character only,
3058
*- all characters, or no characters. Access via the
3059
*- Scenario | Visibility / Performance property page.
3060
*- - Added "Look At" buttons for characters, waypoints,
3061
*- and path beads on respective Elements pages.
3062
*- - Added special effects such as smoke and fire.
3063
*- - Fixed perl script interpreter so that it will work
3064
*- if DI-Guy is installed in a directory with spaces.
3065
*- - Fixed problem where LOD range scale factors weren't
3066
*- taking effect for scene objects.
3067
**
3068
**
3069
**************************************
3070
** \section v9diguyAI DI-Guy AI 9.0 and earlier
3071
**************************************
3072
**
3073
** \subsection v90AI Version 9.0.x
3074
**
3075
** \subsubsection v901AI Version 9.0.1
3076
**
3077
*- - Fixed bug where characters were improperly going through walls.
3078
*- - Fixed a number of minor crashes with creating behavior paths.
3079
**
3080
** \subsubsection v900AI Version 9.0.0
3081
**
3082
*- - To enable DI-Guy AI in programs using the DI-Guy SDK, the header
3083
*- file "diguy_ai.h" must be included, and the functions
3084
*- diguy_ai_initialize() and diguy_ai_deinitialize() must be called
3085
*- at the appropriate times.
3086
*- - New command line flag added to DI-Guy Scenario for optionally.
3087
*- disabling DI-Guy AI. By default DI-Guy Scenario will look for the
3088
*- diguy_ai license feature and check it out if it is present. By
3089
*- putting "-module diguy_ai" on the command line, DI-Guy Scenario will
3090
*- not attempt to enable DI-Guy AI.
3091
*- - Fixed problem with DI-Guy AI agents having trouble killing animals.
3092
*- - Painting a non-continuous region will be more likely to successfully
3093
*- create a behavior path, the longest path from the start point to the
3094
*- mouse up location is used.
3095
*- - Fixed issues with feelers: changes made via UI now change all crowd
3096
*- members, 3D rep of feelers now updated immediately when changed and
3097
*- on reset.
3098
*- - Fixed problem that agent feeler collide distance could not be
3099
*- greater than turn distance.
3100
*- - It is now possible to add a feeler callback to enable DI-Guy AI agents
3101
*- to interact better with static geometry in the SDK. See the following
3102
*- functions for more details:
3103
*>
3104
*- - diguyCharacter::agent_set_feeler_function()
3105
*- - diguyCharacter::agent_get_feeler_function()
3106
*- - diguyScenario::agent_set_default_character_feeler_function()
3107
*<
3108
*- - Crowds and agents can now flee a group. Accessed via:
3109
*>
3110
*- - diguyCharacter::agent_flee_group()
3111
*- - diguyCrowd::agents_flee_group()
3112
*<
3113
**
3114
** \subsubsection v863AI Version 8.6.3
3115
**
3116
*- - Crowd UI Improvements:
3117
*>
3118
*- - Selected member will now only show postures and variants that it has
3119
*- available.
3120
*- - Selected edit mode with display better visual cues indicating which
3121
*- crowd members will be affected by changes
3122
*- - Added look at member button.
3123
*<
3124
*- - Crowd Blitzing: Blitzing a crowd into an area that is non-contiguous
3125
*- will now attempt to find the longest path from the start point to
3126
*- the end point, This should fix a frequent failure case with the
3127
*- Blitzer.
3128
**
3129
** \subsubsection v861AI Version 8.6.1
3130
**
3131
*- - DI-Guy SAF references changed to DI-Guy AI.
3132
**
3133
** \subsubsection v860AI Version 8.6.0
3134
**
3135
*- - New DI-Guy SAF functions:
3136
*>
3137
*- - diguyCharacter::agent_set_current_behavior_region_border_is_solid()
3138
*- - diguyCrowd::set_all_members_enabled()
3139
*- - diguyCrowd::set_current_behavior_region_border_is_solid()
3140
*- - diguyCrowd::is_current_behavior_and_focus_group()
3141
*- - diguyCrowd::is_current_behavior_and_focus_character()
3142
*- - diguyCrowd::is_current_behavior()
3143
*- - diguyCrowd::is_crowd_dead()
3144
*- - diguyScenario::set_create_network_crowds()
3145
*- - diguyScenario::get_create_network_crowds()
3146
*<
3147
** \subsubsection v850AI Version 8.5.0
3148
**
3149
*- - Initial DI-Guy SAF release.
3150
*- - Added/updated DI-Guy SAF classes:
3151
*>
3152
*- - diguyAgentParams
3153
*- - diguyCrowdProfile
3154
*- - diguyCrowd (extensive changes, promoted from experimental)
3155
*<
3156
*- - New DI-Guy SAF functions:
3157
*>
3158
*- - diguyScenario::destroy_crowd()
3159
*- - diguyScenario::get_num_crowds()
3160
*- - diguyScenario::find_crowd()
3161
*- - diguyScenario::get_crowd_at_index()
3162
*- - diguyScenario::create_crowd_profile()
3163
*- - diguyScenario::destroy_crowd_profile()
3164
*- - diguyScenario::get_num_crowd_profile()
3165
*- - diguyScenario::find_crowd_profile()
3166
*- - diguyScenario::get_crowd_profile_at_index()
3167
*- - diguyScenario::create_group_in_region()
3168
*- - diguyCharacter::agent_attack_group()
3169
*- - diguyCharacter::agent_flee_character()
3170
*- - diguyCharacter::agent_flee_location()
3171
*- - diguyCharacter::agent_remove_all_flee_objects()
3172
*- - diguyCharacter::agent_mingle_in_region()
3173
*- - diguyCharacter::agent_pursue_character()
3174
*- - diguyCharacter::agent_pursue_group()
3175
*- - diguyCharacter::agent_travel_behavior_path()
3176
*- - diguyCharacter::agent_travel_path_shape()
3177
*- - diguyCharacter::agent_travel_region_border()
3178
*- - diguyCharacter::agent_wander_region()
3179
*- - diguyCharacter::agent_stop_behavior()
3180
*- - diguyCharacter::agent_set_current_focus_character()
3181
*- - diguyCharacter::agent_set_current_focus_group()
3182
*- - diguyCharacter::agent_get_initial_params()
3183
*- - diguyCharacter::agent_get_current_params()
3184
*- - diguyCharacter::agent_set_current_params_from_profile()
3185
*- - diguyCharacter::agent_get_current_focus_character()
3186
*<
3187
**
3188
**************************************
3189
** \section v9ME DI-Guy Motion Editor 9.0 and earlier
3190
**************************************
3191
**
3192
** \subsection v90ME Version 9.0.x
3193
**
3194
** \subsubsection v901ME Version 9.0.1
3195
**
3196
*- - Added sample bvh file to motions directory, should help document how
3197
*- DI-Guy expects bvh files to be structured.
3198
**
3199
** \subsubsection v900ME Version 9.0.0
3200
**
3201
*- - If motions are added to an action table, the proper default actor
3202
*- is now set automatically.
3203
*- - Improved support for editing offset poses, should be much easier, and
3204
*- not cause abrupt joint behavior.
3205
*- - Changing the actor of a motion arc now immediately applies the new
3206
*- scale to the motion, improvements to actor choosing, motion scaling,
3207
*- and importing code.
3208
*- - Fixed a number of action table editing issues: including hard crash
3209
*- with undo, "remove unused motions" causing corrupted action tables.
3210
*- - General UI improvements:
3211
*>
3212
*- - +/- keys behave more intuitively with regards to the yaw/pitch/roll
3213
*- of the poser.
3214
*- - Shift key alters magnitude of +/- change.
3215
*- - Poser editing gizmo now auto-scales based on camera distance.
3216
*- - Editing mode is now displayed in 3D window title bar.
3217
*- - Initial directories for me project, importing motions and saving
3218
*- motions are now set to expected values.
3219
*<
3220
**
3221
** \subsubsection v863ME Version 8.6.3
3222
**
3223
*- - Fixed issue with zero length animations causing div by zero.
3224
*- - Fixed minor bug with action tables not properly updating when unused
3225
*- motions were removed.
3226
**
3227
** \subsubsection v7111ME Version 7.1.11
3228
**
3229
*- - Fixed problem that many error messages would appear when saving
3230
*- action tables.
3231
**
3232
** \subsubsection v7110ME Version 7.1.0
3233
**
3234
*- - Fixed various problems with setting variants and angle
3235
*- extents for 2-axis motions in the Action Table Editor.
3236
*- - Added sliders for testing aim actions in the Action Table
3237
*- Editor.
3238
**
3239
** \subsubsection v619ME Version 6.1.9
3240
**
3241
*- - Fixed a number of bugs introduced with the upgrade to high
3242
*- precision positions.
3243
**
3244
** \subsubsection Version 6.1.0
3245
**
3246
*- - Added new gesture table editor, allows for the modification of
3247
*- the action tables of table gestures.
3248
*- - Null motion arcs are now editable, with blend type and duration
3249
*- as parameters.
3250
**
3251
** \subsubsection v606ME Version 6.0.6
3252
**
3253
*- - BVH file import now supports joint translations in addition to
3254
*- rotations.
3255
*- - Resultant BDM files contain only relevant variables.
3256
**
3257
** \subsubsection v600ME Version 6.0.0
3258
**
3259
*- - Initial 6.0 DI-Guy Motion Editor release.
3260
**
3261
**
3262
**************************************
3263
** \section v8digcv DI-Guy Character Viewer 9.0 and earlier
3264
**************************************
3265
**
3266
** \subsection v80cv Version 8.0.x
3267
**
3268
** \subsubsection v802CV Version 8.0.2
3269
**
3270
*- - Added view selection buttons that load new camera settings.
3271
**
3272
** \subsubsection v619CV Version 6.1.9
3273
**
3274
*- - Fixed a number of bugs introduced with the upgrade to high
3275
*- precision positions.
3276
*- - Fixed character transparency.
3277
*- - Fixed selecting the default appearance.
3278
**
3279
** \subsection v60cv Version 6.0.x
3280
**
3281
** \subsubsection v602CV Version 6.0.2
3282
**
3283
*- - Added default settings file that shows Character Type /
3284
*- Appearance / Action selection page.
3285
**
3286
** \subsubsection v601CV Version 6.0.1
3287
**
3288
*- - Fixed problem where appearances that used a different actor than
3289
*- the default actor for a character did not correctly display.
3290
**
3291
** \subsubsection v600CV Version 6.0.0
3292
**
3293
*- - DI-Guy Character Viewer added to DI-Guy Applications Suite.
3294
*- Allows quick review of character types, appearances, and
3295
*- actions.
3296
**
3297
**
3298
**************************************
3299
** \section v9vpdiguy DI-Guy for Vega Prime Version 5.2 - 9.0
3300
**************************************
3301
**
3302
** \subsection v90VP Version 9.0
3303
**
3304
** \subsubsection v903VP Version 9.0.3
3305
**
3306
*- - vpNet 2.2 should now be enabled.
3307
*- - Fixed issue with skyLight lighting and shaders not being properly
3308
*- applied.
3309
*- - Fixed Memory leak when characters were unrefed to zero. Note a slight
3310
*- change to the basics example.
3311
**
3312
** \subsubsection v901VP Version 9.0.1
3313
**
3314
*- - Fixed issue with new vpDiguys not having their locations properly
3315
*- set when reading out of an acf.
3316
*- - Fixed issue with vpDiguyCharacters parented to vpTransforms not
3317
*- being properly created.
3318
**
3319
** \subsubsection v900VP Version 9.0.0
3320
**
3321
*- - DI-Guy for Vega Prime now works with VP 2.2.
3322
**
3323
** \subsection v80VP Version 8.0
3324
**
3325
** \subsubsection v863VP Version 8.6.3
3326
**
3327
*- - Fixed crash on exit when a vpDiguyCharacter parent was not a
3328
*- scenario.
3329
*- - Fixed bug where characters would multiply render if they were
3330
*- parented to a vpObject
3331
*- - parented and translated characters will should start broadcasting
3332
*- over the network with proper values.
3333
**
3334
** \subsubsection v803VP Version 8.0.3
3335
**
3336
*- - Moved example_acfs to their own subdirectory instead of in
3337
** simple_playback directory.
3338
*- - Added warning about setting channel LOD scale to zero, can cause
3339
** character to not draw.
3340
*- - Fixed an issue where not having a valid license could cause vp
3341
** applications to crash.
3342
*- - Fixed licensing issue effecting vpDiguy/vpNet/HLA/stealth.
3343
*- - Basics Programming example now demonstrates ground clamping. As well
3344
*- as some other polish to programming examples.
3345
**
3346
** \subsubsection v802VP Version 8.0.2
3347
**
3348
*- - Improved reporting of version information during installation.
3349
**
3350
** \subsubsection v800VP Version 8.0.0
3351
**
3352
*- - Initial 8.0 release candidate.
3353
*- - vpDiguy using vpNet should now support all coordinate conversion
3354
*- routines that vpNet supports.
3355
*- - Memory usage and rendering performance improvements.
3356
**
3357
** \subsection v70VP Version 7.0
3358
**
3359
** \subsubsection v708VP Version 7.0.8
3360
**
3361
*- - Fixed HLA networking licensing issue. Shouldn't need explicit hla
3362
*- license with vpNet.
3363
*- - Added new autogenerated vpDiguy SDK docs.
3364
*- - Added code to basics example that demonstrates creating a character
3365
*- after configure.
3366
*- - Added documentation about vpDiguy openAL audio module's
3367
*- incompatibility with vpAudio module.
3368
*- - Added static versions of vpDiguy libraries, updated autolinking
3369
*- code in vpDiguyCpp.cpp.
3370
**
3371
** \subsubsection v707VP Version 7.0.7
3372
**
3373
*- - Fixed a number of vpNet related bugs.
3374
*- - NOTE: In order to make vpNet interaction more solid reading of
3375
*- UTM coordinates out of Scenario Objects in vpDiguy has been
3376
*- disabled. UTM coordinates should be specified explicitly in the
3377
*- Net Connection gcf panel and the DI-Guy Scenario Network Page.
3378
**
3379
** \subsubsection v706VP Version 7.0.6
3380
**
3381
*- - Fixed a number of recreation/looping related bugs.
3382
**
3383
** \subsubsection v703VP Version 7.0.3
3384
**
3385
*- - Turned on vpNet/vpDiguy networking.
3386
*- - Updated all the acfs to be vp 2.0 compliant.
3387
*- - Updated vpDiguy gcf to include new 7.0 content.
3388
*- - Fixed bug in UTM support.
3389
*- - Fixed problem if multiple diguy particles attempt to instantiate
3390
*- the same type of vpFX. Fixed memory leak as well.
3391
*- - Fixed divide by zero bug in networking code, could cause 0th
3392
*- character to never show up.
3393
*- - Fixed bug where a character with an appearance change would
3394
*- not be recreated properly if a scenario was looping.
3395
**
3396
** \subsubsection v700VP Version 7.0.0
3397
**
3398
*- - Fixed a couple of vpDiguyScenario function calls to print a warning
3399
*- if the functions are called before configure, instead of crashing.
3400
*- - diguyCharacter's position syncs with vpDiguyCharacter on creation.
3401
*- - Distributed rendering should now support mapping from DI-Guy
3402
* particles.
3403
**
3404
**
3405
** \subsection v60VP Version 6.0
3406
**
3407
** \subsubsection v6111VP Version 6.1.11
3408
**
3409
*- - Consolidated networking examples, moved
3410
*- vpnet_(send/receive)_(dis/hla).acf
3411
*- into simple_playback because they didn't have unique c++ code.
3412
*- - Added postLoad function to vpDiguyCharacter building code to try
3413
*- and enable sensor prime.
3414
*- - Added vpDiguyScenario::set_time_independant_of_vp_sim_time() and
3415
*- vpDiguyScenario::get_time_independant_of_vp_sim_time() Allows
3416
*- time to be disconnected from sim time.
3417
**
3418
** \subsubsection v6110VP Version 6.1.10
3419
**
3420
*- - Renamed vpDiguyScenario::SetSyncCameraEnable() to
3421
*- vpDiguyScenario::setSyncCameraEnable().
3422
**
3423
** \subsubsection v619VP Version 6.1.9
3424
**
3425
*- - Added per scenario time offset code.
3426
**
3427
** \subsubsection v618VP Version 6.1.8
3428
**
3429
*- - Code now compiles against Vega 2.0 libraries:
3430
*- - Added 2.0 style copy constructor for diguyCharacters to use in
3431
*- cloning.
3432
*- - Fixed a bug where locked off joints issued warnings.
3433
*- - Fixed a bug where some dynamic matrixes weren't being properly
3434
*- updating, fixes gazing inside Vega.
3435
*- - Altered how diguyScenarios get loaded to accommodate new
3436
*- merging code.
3437
*- - Unsupported Vega sound module now uses openAL.
3438
**
3439
** \subsubsection v611VP Version 6.1.1
3440
**
3441
*- - gcfs and xsd no longer use "DI-Guy" in the naming convention;
3442
*- instead "Diguy" is now used. This avoids uncompilable code
3443
*- generated from lynxPrime's export .cpp functionality, as well
3444
*- as being more consistent with Vega conventions.
3445
**
3446
** \subsubsection v608VP Version 6.0.8
3447
**
3448
*- - Fixed serious bug affecting HLA networking in DI-Guy for Vega
3449
*- Prime. This bug was causing various problems, ranging from
3450
*- missing or extra apparent network entities, to entities
3451
*- appearing at the wrong location.
3452
**
3453
** \subsubsection v607VP Version 6.0.7
3454
**
3455
*- - Changed all Vega Prime code/acfs that specify "DI-Guy" to "Diguy".
3456
*- This should allow cpp exports to work better.
3457
*- - Renamed vpDiguy.h/cpp to vpDiguySettings to better match acf info.
3458
*- - Added Vega Prime view settings example that shows off camera sync
3459
*- code.
3460
*- - Added Vega Prime simple example that shows how to initialize and
3461
*- run with no acf or dss.
3462
**
3463
** \subsubsection v606VP Version 6.0.6
3464
**
3465
*- - Fixed problem which inadvertently disabled standard Vega Prime
3466
*- "X" key functionality (enable / disable the position strategy
3467
*- for all observers) in a vpDiguy application.
3468
**
3469
** \subsubsection v605VP Version 6.0.5
3470
**
3471
*- - Fixed problems preventing DI-Guy for Vega Prime from
3472
*- working with DIS/HLA for Vega Prime. DI-Guy for Vega
3473
*- Prime now works with Vega Prime 1.2.2 from MultiGen
3474
*- Paradigm and vpNet 1.2.2 from MAK Technologies. Prior
3475
*- versions of vpNet are not supported.
3476
**
3477
** \subsubsection v602VP Version 6.0.2
3478
**
3479
*- - Switched bdiString to bdiString* in vpDiguyCharacter.h, to remove
3480
*- a dependency on a header file that is not distributed.
3481
**
3482
** \subsubsection v601VP Version 6.0.1
3483
**
3484
*- - Fixed problem in vpDiguy DIS networking. Outgoing entities were
3485
*- being published with entity numbers which conflicted with those
3486
*- being used by Vega Prime entities. On the receiving end, this
3487
*- would cause characters to pop from place to place.
3488
**
3489
**
3490
** \subsection v50VP Version 5.0
3491
**
3492
** \subsubsection v534VP Version 5.3.4
3493
**
3494
*- - Added a circle example program to programming_examples/vpdiguy.
3495
**
3496
** \subsubsection v533VP Version 5.3.3
3497
**
3498
*- - DI-Guy characters types are now listed in a Character Type combo box.
3499
*- - A character type sensitive list of appearances are now listed in an
3500
*- Appearance combo box.
3501
*- - A character type sensitive list of actions are now listed in an
3502
*- Action combo box.
3503
*- - A character type sensitive list of head appearances are now listed
3504
*- in a Head Appearance combo box.
3505
*- - Altering the xyz position, heading or scale factor of a character
3506
*- now reflects on the character immediately.
3507
*- - Adding a ground clamp to a DI-Guy Scenario node now adds the ground
3508
*- clamp to all of its children that don't currently have a ground
3509
*- clamp.
3510
*- - Added new DI-Guy Settings functionality, including turning on/off
3511
*- scripting, sound effects, facial expressions, and the mapping of
3512
*- DI-Guy particles to Vega particles.
3513
*- - Added new options to DI-Guy Scenario panel.
3514
*- - Added toggle for showing scene objects found in the scenario file.
3515
*- - Added Sync Camera option that will slave the observer/motion controls
3516
*- to the DI-Guy camera.
3517
*- - Adding a DI-Guy character directly to a scene now creates one without
3518
*- a scenario being necessary.
3519
*- - DI-Guy characters dropped into a vpNet model map are now correctly
3520
*- cloned. (Requires the latest version of vpNet.)
3521
**
3522
** \subsubsection v531VP Version 5.2.1
3523
**
3524
*- - Better integration with MaK's vpNet module (see above).
3525
*- - Installation now occurs as a separate module on the DI-Guy CD.
3526
*- - Installation now automatically copies samples, documents to the Vega
3527
*- Prime installation as well as registering the DI-Guy for Vega Prime
3528
*- module.
3529
**
3530
*
3531
3532
*****************************************************************************
3533
*****************************************************************************
3534
**
3535
** \section diguydata DI-Guy Data, 9.0 and Earlier
3536
**
3537
*****************************************************************************
3538
*****************************************************************************
3539
**
3540
** \subsection v90data Version 9.0
3541
**
3542
**
3543
** \subsubsection v901data Version 9.0.1
3544
**
3545
*- - Added character soldier_sa80, a British soldier with desert and
3546
*- temperate appearances using a sa80, based on the soldier_07 character.
3547
*- Available appearances:
3548
*>
3549
*- - uk_desert_sa80
3550
*- - uk_temperate_sa80
3551
*<
3552
*- - Added character "projectile" with meters per second motions.
3553
*- Character projectile appearances:
3554
*>
3555
*- - rpg_fired
3556
*- - sa7_fired
3557
*- - stinger_fired
3558
*- - javelin_fired
3559
*- - 120mm_tank_round_fired
3560
*- - at4_fired
3561
*- - 40mm_fired
3562
*<
3563
*- - Added sound files: m203_hit.wav, fire_m203.wav, arabic_street_sounds.wav
3564
*- sa7_flight.wav, sa7_fired.wav, stinger_fired.wav, stinger_flight.wav,
3565
*- javelin_flight.wav, javelin_impact.wav, at4_fired.wav, at4_flight.wav
3566
*- at4_impact.wav, javelin_fired.wav, pk74_fired.wav, m1a1_fired.wav
3567
**
3568
** \subsubsection v901data Version 9.0.0
3569
**
3570
*- - Some character types have been made deprecated, and made "legacy"
3571
*- character types. If these character types are used in an existing
3572
*- .dss file or are created by a diguyScenario::create_character()
3573
*- call they will be created, but by default they will not show up
3574
*- in any DI-Guy Scenario character type selection controls. The
3575
*- legacy character types are:
3576
*>
3577
*- - soldier_m249
3578
*- - soldier_m4
3579
*- - soldier_qk
3580
*- - soldier_signals
3581
*- - soldier_fire
3582
*- - soldier_pistol
3583
*- - soldier_melios
3584
*- - afghan_child_crowd
3585
*- - male_pedestrian3
3586
*- - mped_sweeper
3587
*- - mped1_misc
3588
*- - mped2_misc
3589
*- - mped3_misc
3590
*- - mped5_crowd2
3591
*- - mped5_crowd3
3592
*- - mped5_crowd4
3593
*- - mped5_crowd5
3594
*- - mped5_crowd6
3595
*- - fped2_misc
3596
*- - fped3_crowd2
3597
*- - suspect3
3598
*- - marshaller
3599
*- - esil
3600
*- - soldier_precise
3601
*- - launcher
3602
*- - suspect
3603
*- - suspect2
3604
*- - fped_mother
3605
*- - sergeant
3606
*<
3607
**
3608
** \subsection v80data Version 8.0
3609
**
3610
** \subsubsection v800data Version 8.0.0
3611
**
3612
*- - New character types:
3613
*>
3614
*- - chain_simulation
3615
*- - civilian_cc
3616
*- - soldier_cc
3617
*- - soldier_at4
3618
*- - soldier_javelin
3619
*- - soldier_m249
3620
*- - soldier_m9
3621
*- - soldier_m4
3622
*- - train
3623
*<
3624
*- - New human appearances:
3625
*>
3626
*- - 3 Security Guards
3627
*- - Hazmat Suits level A B and C
3628
*- - Assortment of Hazmat props
3629
**
3630
*- - 10 different Close Combat civilians
3631
*- - Close Combat BDU and DCU with M9, M249, M240, M60, AT4,
3632
*- Javelin M4 with M203, M16 with M203 Stinger weapons
3633
*- - Close Combat Opfor with SA16, RPG7, AK47 and PK74 weapons
3634
**
3635
*- - 3 Iraqi Insurgents
3636
*- - 2 Iraqi Soldier
3637
*- - 2 Iraqi Police
3638
**
3639
** The following soldier appearances can have M9, M249, M240, M60,
3640
** AT4, Javelin M4 with M203 and M16 with M203 weapons:
3641
**
3642
*- - 4 BDU with IBA
3643
*- - 4 ACU with IBA
3644
*- - 4 USMC with IBA
3645
*- - 4 USMC desert with IBA
3646
*<
3647
*- - New turret vehicle and technical vehicle appearances:
3648
*>
3649
*- - gaz_truck_w_ZSU23_turret
3650
*- - gaz_truck_w_ZSU23_turret_blown
3651
*- - toyota_pickup_tech_turret
3652
*- - toyota_pickup_tech_turret_blown
3653
*- - humvee_50cal_grn_turret
3654
*- - humvee_50cal_grn_turret_blown
3655
*- - humvee_50cal_des_turret
3656
*- - humvee_50cal_des_turret_blown
3657
*- - m1a2_abrams_grn_turret
3658
*- - m1a2_abrams_grn_turret_blown
3659
*- - m1a2_abrams_des_turret
3660
*- - m1a2_abrams_des_turret_blown
3661
*- - t72_tank_grn_turret
3662
*- - t72_tank_grn_turret_blown
3663
*- - t72_tank_des_turret
3664
*- - t72_tank_des_turret_blown
3665
*- - m2a3_bradley_grn_turret
3666
*- - m2a3_bradley_grn_turret_blown
3667
*- - m2a3_bradley_des_turret
3668
*- - m2a3_bradley_des_turret_blown
3669
*- - leclerc_tank_descamo_turret
3670
*- - leclerc_tank_descamo_turret_blown
3671
*- - leclerc_tank_camo_turret
3672
*- - leclerc_tank_camo_turret_blown
3673
*<
3674
*- - Added Motions to Soldier and Soldier2 characters:
3675
*>
3676
*- - stand_ready_8th_turn_left
3677
*- - stand_ready_8th_turn_right
3678
*- - stand_ready_qtr_turn_left
3679
*- - stand_ready_qtr_turn_right
3680
*- - stand_aim_extreme
3681
*- - kneel_aim_extreme
3682
*- - walk_aim
3683
*- - walk_aim_back
3684
*<
3685
**
3686
** \subsection v70data Version 7.0
3687
**
3688
** \subsubsection v700data Version 7.0.0
3689
**
3690
*- - New character types:
3691
*>
3692
*- - chem_bio_pedestrian
3693
*- - fdc_chock_and_chains
3694
*- - fdc_fuelman
3695
*- - fdc_grounding
3696
*- - fdc_pallet
3697
*- - fdc_pedestrian
3698
*- - firefighter
3699
*- - fireman_silver
3700
*- - vehicle_technical
3701
*- - vehicle_turret
3702
*- - vehicle_wheels
3703
*<
3704
**
3705
** \subsection v60data Version 6.0
3706
**
3707
** \subsubsection v612data Version 6.1.2
3708
**
3709
*- - Vehicles and props now have more accurate bounding volumes.
3710
*- - Fixed problem with config file appearance syntax. The
3711
*- item "shapeset:shape" format caused a crash; it now works
3712
*- again.
3713
*- - Replaced default scene object
3714
*- (sets/default_stage/default_stage.flt) with new default
3715
*- (sets/default_stage7/flt/default_stage7.flt). The new
3716
*- default_stage7.flt scene object has a number of different
3717
*- areas in which example scenarios can be placed.
3718
**
3719
** \subsubsection v611data Version 6.1.1
3720
**
3721
*- - Added new appearance "invisible_human"; Using this appearance
3722
*- for a human character will remove all geometry from the
3723
*- character, effectively making it invisible.
3724
**
3725
** \subsubsection v610data Version 6.1.0
3726
**
3727
*- - Added ability to specify in config files how long a null
3728
*- transition should take, and which blend function it should use.
3729
**
3730
** \subsubsection v602data Version 6.0.2
3731
**
3732
*- - Modified stroll motions of female_pedestrian character to move
3733
*- hands further away from body.
3734
*- - Fixed some facing issues for soldier-type characters in transition
3735
*- motions between stand_aim and kneel_aim actions.
3736
**
3737
** \subsubsection v601data Version 6.0.1
3738
**
3739
*- - Added particle_puff.rgba to list of effects textures.
3740
*- - Fixed the standing hip height of actor greg. It had been
3741
*- mistakenly changed to match that of actor bill. This caused
3742
*- problems for motion scaling for some actor / appearance
3743
*- combinations. (PR 3029)
3744
**
3745
** \subsubsection v600data Version 6.0.0
3746
**
3747
*- - Initial 6.0 DI-Guy Data release.
3748
**
3749
**
3750
** \subsection v50data Version 5.0
3751
**
3752
** \subsubsection v535data Version 5.3.5
3753
**
3754
*- - Removed one unused level of Motion LODs from data loaders
3755
*- config entries. The removed LOD 6 always had 0 variables in
3756
*- it, which wasn't useful for anything.
3757
*- This change requires use of DI-Guy Applications 5.3.5.
3758
**
3759
** \subsubsection v532data Version 5.3.2
3760
**
3761
*- - Changed format of Motion Texture (motex) entries in DI-Guy
3762
*- config files. The new format gives motion textures their
3763
*- own config entry keyword, separate from motion arcs. This
3764
*- allows DI-Guy to know exactly which motions are going to be
3765
*- used as motion textures. Custom motion textures using the
3766
*- old format need to be updated.
3767
*- - Changed format of gesture entries in DI-Guy config files.
3768
*- Custom gestures using the old format need to be updated.
3769
**
3770
** \subsubsection v531data Version 5.3.1
3771
**
3772
*- - Fixed problem with airport_crowd character selecting wrong
3773
*- action for default moving action.
3774
*- - Added sergeant2 character, which is similar to the sergeant
3775
*- character but better deals with transitions between actions.
3776
*- - Added fped_mother2 character, which is similar to the fped_mother
3777
*- character but better deals with transitions between actions.
3778
**
3779
** \subsubsection v522data Version 5.2.2
3780
**
3781
*- - Running motion has been improved for the following characters:
3782
*- afghan_fighter, cbd, soldier, soldier2, soldier_precise, soldier_qk.
3783
*- Scenarios from previous revisions using these motions may behave
3784
*- slightly differently.
3785
**
3786
*/
include
diguy_changes_older_dox.h
Generated on Mon Sep 23 2024 15:33:46 for DI-Guy SDK Documentation by
1.8.9.1