Changes

Jump to navigation Jump to search

Documentation/Engine/Mover model group

1,408 bytes added, 14:38, 2 May 2019
no edit summary
: '''1) No bones are set.'''
::Props is placed to the mover origin plus <code>model_offset</code> and with zero rotation plus <code>model_rotation</code>.
:: For example a bucketon the ground.
: '''2) Bone A is set only.'''
::Props is placed to the bone A placement plus <code>bone_offset_a</code> plus <code>model_offset</code> with bone A rotation plus <code>model_rotation</code>.
:: For example a spongein one hand.
: '''3) Bone A and bone B are set.'''
::Props is placed to the bone A placement plus <code>bone_offset_a</code> plus <code>model_offset</code> with rotation given by direction vector ('''from''' bone B placement plus <code>bone_offset_b</code> '''to''' bone A placement plus <code>bone_offset_a</code>) plus <code>model_rotation</code>
:: For example a broomin both hands
== Mover model group ==
* <code>country_specific</code> If true then only mover desc containing country tag given by mover placement will be generated.
'''How does it work?'''
 
When the unit is loaded, it collects all mover desc containing all tags from the <code>desc_tags</code> property and all mover anim containing all tags from the <code>anim_tags</code> property. When the mover is generated, it randomly chooses one of the collected mover desc and then it tries to choose one of the collected mover anim which use the '''same skeleton''' as the choosen mover desc model.
 
This is important because sometimes you want to have group containing models with different skeletons and animations with different skeletons. But you want only valid model-anim combinations. '''For example''' group of walking men and women where men use different skeleton than women.
 
'''Optimization'''
 
Because engine ensures that only valid model-anim combinations will be created, it may seem that animation tags should contain only tags describing the animation activity. But because the model-anim combinations are choosen in the moment of mover generation, we want to limit the combination pool as much as possible. Because of that mover anim tags should contain (apart from the activity itself) tags describing compatible mover desc. In <code>mover_anim</code> the example above these tags are <code>human</code> and <code>man</code>. And in the related mover group use these tags in <code>anim_tags</code>. In the example it is the tag <code>man</code>.
91
edits

Navigation menu