Difference between revisions of "Documentation/Engine/Mover model group"
DriveSafely (talk | contribs) m |
|||
(19 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
− | Mover model group is a new mover definition unit. | + | Mover model group is a new mover definition unit. Idea of this new unit is to have a system which can easily combine compabible models and animations. The main use is for characters to remove the need of definition for every combination of models and animations. Moreover these mover groups can use props in separate models and easily "skin" them to specific bones. |
The whole system consists of four units: | The whole system consists of four units: | ||
Line 7: | Line 7: | ||
== Mover desc == | == Mover desc == | ||
− | Unit <code>mover_desc</code> represents model and | + | Unit <code>mover_desc</code> represents model and it's data. It is located in <code>/base/def/world/mover_desc.sii</code>. |
<pre> | <pre> | ||
mover_desc : mover_desc.worker_3 { | mover_desc : mover_desc.worker_3 { | ||
Line 77: | Line 77: | ||
* <code>model_rotation</code> Props placement rotation. | * <code>model_rotation</code> Props placement rotation. | ||
'''How does it work?''' | '''How does it work?''' | ||
− | |||
Props is rendered and placed as separate model. Using bone A and bone B we can attach the props to the mover skeleton. There are three possible setups. | Props is rendered and placed as separate model. Using bone A and bone B we can attach the props to the mover skeleton. There are three possible setups. | ||
− | + | ;No bones are set. | |
− | + | :Props is placed to te mover origin plus <code>model_offset</code> and with zero rotation plus <code>model_rotation</code>. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Revision as of 13:20, 2 May 2019
Contents
Mover model group is a new mover definition unit. Idea of this new unit is to have a system which can easily combine compabible models and animations. The main use is for characters to remove the need of definition for every combination of models and animations. Moreover these mover groups can use props in separate models and easily "skin" them to specific bones.
The whole system consists of four units:
Mover desc
Unit mover_desc
represents model and it's data. It is located in /base/def/world/mover_desc.sii
.
mover_desc : mover_desc.worker_3 { model_desc: "/model/mover/characters/new_generation/new/models/man/worker_vest/worker_vest_nemiro_lod0.pmd" lods[0]: "/model/mover/characters/new_generation/new/models/man/worker_vest/worker_vest_nemiro_lod1.pmd" lods[1]: "/model/mover/characters/new_generation/new/models/man/worker_vest/worker_vest_nemiro_lod2.pmd" lods[2]: "/model/mover/characters/new_generation/new/models/man/worker_vest/worker_vest_lod3.pmd" lod_distances[0]: 10 lod_distances[1]: 30 lod_distances[2]: 90 group_tags[]: human group_tags[]: man group_tags[]: cauca group_tags[]: worker }
Properties:
model_desc
Model descriptor.model_coll
Model collision.lods
Model lod descriptors.lod_distances
Lod distances.group_tags
Group tags. More about it in mover_model_group section.
Mover anim
Unit mover_anim
represents animation and its data. It is located in /base/def/world/mover_anim.sii
.
mover_anim : mover_anim.sweeper { model_anim: "/model/mover/characters/new_generation/animations/universal/sweeping_anim.pma" group_tags[]: human group_tags[]: man group_tags[]: sweeper props[]: mover_props.sweeper.broom }
Properties:
model_anim
Animation descriptor.group_tags
Group tags. More about it in mover_model_group section.props
Array of link pointers to animation props.
Mover anim props
Unit mover_anim_props
represents animation props and its settings. It is located in /base/def/world/mover_anim_props.sii
.
mover_anim_props : mover_props.sweeper.broom { model: "/model/mover/characters/new_generation/models/props/independent/broom.pmd" bone_a: lefthand bone_b: righthand bone_offset_a: (0.03, 0.08, 0) bone_offset_b: (-0.2, 0.16, -0.15) model_offset: (0.0, 0.0, -0.67) model_rotation: (0.0, 0.0, 0.0) }
Properties:
bone_a
First bone to "skin" prefix.bone_b
Second bone to "skin" prefix.bone_offset_a
Skin offset for the first bone.bone_offset_b
Skin offset for the second bone.model
Props model descriptor.model_animation
Props model animation.sync_animation
Force time synchronization between props animation and mover animation.model_offset
Props placement offset.model_rotation
Props placement rotation.
How does it work? Props is rendered and placed as separate model. Using bone A and bone B we can attach the props to the mover skeleton. There are three possible setups.
- No bones are set.
- Props is placed to te mover origin plus
model_offset
and with zero rotation plusmodel_rotation
.