Animation system for Unity engine based on motion matching
Data Creator or DataCreator_New - stores data and animations to calculate "Motion Matching Data" asset
Data Creator Trajectory Settings - stores past and future times of trajectory points needed to create trajectory
Motion Matching Bone Profile - stores information about bones witch will be used to match animations
Motion Matching Data - stores calculated data (trajectory and pose) for specific animations, this assets are created by editors which use Data Creator or DataCreator_New. This asset can be edited in Motion matching data editor
Motion Matching Animator_SO - asset which represent animation state machine controller (like mecanim animation controller)
Native Motion Group - asset which represent one or more animations. This asset need to be placed in states of Motion Matching Animator_SO.
Section Dependencies - stores information about sections (time intervals) of animation
Motion Matching Component - component equivalent to unity Animator component.
Trajectory Maker - component responsible for creating trajectory which is passed to Motion Matching Component. This is my own implementation and of course it can be replaced.
Editor for creating animation state machine.
In this editor we can add a lot of data to Motion Matching Data asset, such as:
- Sections - time intervals in animation, wchich can be used as:
- time intervals during which the transition conditions should be checked
- time intervals where motion matching finding should find next animation
- Conatct points - points which are used in contact state of Motion Matching Animator_SO to move character betweem points specified in game world (they can be used to implement parkour)
- Curves - works like curves in normal animation, but theirs values are evaluated in LateUpdate.
- Animation Events - worls like events in normal animations but are fired in LateUpdate
- Bone Tracks - experimental
- Animation Speed Curve - it is curve which represent animation speed multiplier