Skip to content

Animation system for Unity engine based on motion matching

License

Notifications You must be signed in to change notification settings

github00eric/Prototype-MotionMatching

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

MotionMatchingByDreaw

Animation system for Unity engine based on motion matching

New Assets (by class names):

Editor assets:

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

Runtime assets:

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

Components:

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.

Editors:

Motion matching state machine graph editor

image

Editor for creating animation state machine.

Motion matching data editor:

image

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

About

Animation system for Unity engine based on motion matching

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%