You know, it always bothered me that my friends don’t see animation in Roblox studio. I had to update the game, log in to it, it took quite a lot of my time. It was a hindrance that every time the animation worked, it had to be updated. Of course, this is not the only thing implemented in the module
Why is my module?
Open source - At the moment, there are 3 types of animation playback in the module: C0,Transform,Combined, as well as an automatic type that selects the most appropriate type of animation playback. You can specify them, or you can not specify them. This means that with a proper understanding of programming, you can write your own types. For example, “sharp-style”, “old-stule”, and so on.
The co-authors will also see this animation in the studio, which is great because now you don’t have to publish the game just so your friend can see the animation
Complete typing and correct typing hierarchy (hints). There is no typing in most modules. This has a subtle effect on performance, as well as removes hints. So even a beginner in programming will figure out how to use this module.
“just work models”. The authors of other open source works do not need to write a tedious “Read me” in which they prescribe to a beginner exactly how to publish animations so that everything works.
The ability to play animations outside the game (u can make plugins etc)
There are still a bunch of different advantages
API
Get Started
local AnimationModule = require( game.ReplicatedStorage.Animator ) -- Set your path
local Animator = AnimationModule.new(game.Workspace:WaitForChild("Rig").Humanoid) -- Your rig (you can also use the player)
local AnimationTrack = Animator:LoadAnimation(game.ReplicatedStorage.Animations.RigAnim) -- Path to KeyFrameSequence
--type AnimationTrack
Name: string?;
Speed: number?;
Weight: number?;
Length: number?;
IsPlaying: BoolValue;
Looped: BoolValue;
Priority: any?;
--type Animator
Animator.AnimationMode = ... ::number
Animator.AnimationMode = 0 -- AutoType
Animator.AnimationMode = 1 --[[Is "Transform mode - Modifies the entire CFrame of the joint(position and rotation) using joint.joint.Transform"]]
Animator.AnimationMode = 2 --[[Is "C0 mode" - Modifies only the rotation of the joint using joint.joint.C0]]
Animator.AnimationMode = 3 --[[Is new and best "Combined mode - Uses joint.joint.Transform for joints where the CFrame has changed,and joint.joint.C0 for all others."]]
me
Ceat_ceat - Honestly, I do not know who it is, but this guy is very cool. He wrote the first version of this module, and I came and wrote my own based on it. I couldn’t help but point out this person here
Update
V2.2
Fixed some errors with MarkerReachedSignal. Now it returns Marker value
Added Animator:GetPlayingAnimationTracks() function
Polls
Would you use this over the default animator? Why or why not?
Yes
No
0voters
Write what you think about this module, why you put 1 or 5 td tp. I also welcome any criticism
Rate!
1
2
3
4
5
0voters
Thank you for taking the time to read it. Please write a comment, what do you think about this work. thats all
hi guy i was alerted of this modules appearance
i mark a large majority of my public stuff with my name at the top of the script so i think it would be nice if my name was also in the code somewhere, you should put your name there and a link to your post too
ALSO: i saw your fix for CubicV2 in your version of the easing module and it uses cubic easing if it reaches CubicV2. that’s not enough because on regular Cubic, In and Out easing directions are reversed, my newer version adds in CubicV2 and fixes Cubic to be incorrectly reversed to be consistent with roblox. please check out my fix in the easing module here
Yesss!!! We needed this for like the whole 19 years!! The issue of developing a game with someone is that only person (the animator) can see animations in studio which creates a lot of mess with testing and getting feedback from your team. Also, this removes issues of slow moderation and stuff like that.
Also, as i remember, roblox’s default API doesn’t have anything like Track:Pause() and Track:Resume(). You could add it. In addition, if you don’t have it, i recommend you to add animation-blending like roblox has. For example, if i have 2 walk animations playing at the same time, where one has weight 10 and other — 5, then all the keyframes will be closer to the one with weight 10. This is useful feature actually that allows you to combine animations and not make any new for specific situations (like attacking and walking at the same time).
By the way, if you’ll add animation blending system (and i hope you will), PLEASE, make a option to adjust weight of every single keyframe separately. Roblox doesn’t have this option and provides you weight of the whole animation instead, and that’s not good.
Altho, this plugin must be really useful. In addition, unlike roblox animation player, it can (at least i guess it can) play animations outside of playtest, so you, for example, can check an attack visuals quickly without launching playtest. Really good.
P. S. : не ожидал на девфоруме увидеть русского, лол
Yes, you should probably use the C0 type. try to put an animation on the player (using the C0 type) and be like at this moment. You will see that the animations have crossed