Hey everyone!
I’ve created my first library and i’d like to share it here.
MotionX - a clean & Extensible Animation Manager.
What is MotionX?
- MotionX was made to resolve one thing:
Make managing animations easier, cleaner and reliable!
Features:
- Register animations by name, with priority and asset ID
- Play, pause, resume and stop animations with simple methods
- Track you animations state
- Adjust speed dynamically
- Clean, readable API and documentation
Documentation & Source:
Documentation: MotionX Documentation
Asset: MotionX Asset
Wally: Wally Package
Github: Github Repo
Keep in mind that this is my first ever library and its in early release. So expect bugs to be there.
I will actively improve this library based on community feedback
- If you have found a bug please open a issue on GitHub or here.
- If you have any suggestions type it here.
Feedback is appreciated!
I’d like to hear:
- How you’re using MotionX
- What could be better
- If it helps you make cleaner scripts when handling animations
5 Likes
Some features you may want to add:
-
a global cache
ex: MotionX.Get(Character) so other script can easily access animation objects
-
A way to add FadeTime Animation:Play(FadeTime)
-
Animation marker support
ex: maybe a way to assign animation marker/keyframe reached events with a table
{
MarkerName = function()
end
}
It’s not required but a handy utility I would find useful
1 Like
Thank you! I’ll consider that.
One more thing. It’s pretty handy for combat systems but a way to “tag” animations.
When handling stuns in combat systems, you need to cancel their animations but it gets annoying finding the right one(s) to cancel. Adding some way of grouping or tagging animations would be helpful. I love the docs, it looks really nice.
I’ll take that into consideration too.
And thank you for complimenting on my docs!
1 Like
Hey everyone!
I’ve just released the newest version of MotionX → MotionX 1.0.4
Whats new:
Added a new groupping feature! (suggested by @BreezeOnTheDoor)
Added auto-cleanup when you delete your character
Added 1 new read only method: ‘:GetGroup()’
Added 1 new instance method: ‘:BindMarkers()’
Changes:
Changed ‘:Play()’ method to include adding a fade time
Changed ‘:RegisterNew()’ method to include adding a group
Changed ‘:GetGroup()’ method to include a group paramater for stopping all animations in a group.
Documentation & Source:
Documentation: MotionX Documentation
Asset
Any Feedback is appreciated!