rFrameAnimator | A brand new Animation Editor

rFrameAnimator | Alpha

Download

What is rFrameAnimator?

rFrame Animator is a combination of the default Roblox animator and the Blender animation editor. It’s been in development for the past few months and has only been used for private projects so far. Today, I want to finally release it to the public.

Why should I use it?

It has most of the features the roblox editor has + a graph editor. There are also original features such as: frame rate customization and all Roblox keyframe easing styles. All original features are still exportable.

Features

Menu

image

  1. Saving an animation: Click the “Save” button and a module script named after your animation will appear in the currently selected rig.

  2. Loading an animation: Select the animation you want to load. Note that only animation saves created by 1. can be loaded. After that, click the “Load” button.

  3. Exporting an animation: Click the “Export” button. Exporting an animation will create a KeyFrameSequence instance. Currently only exporting to Roblox is possible.

The rest is pretty much self explanatory.

Timeline

You can see the current keyframes and their respective easing styles in the timeline widget. Hover over any keyframe to see a pop-up displaying more information. Every motor in the rig has its own row of keyframes in the timeline. Simply click on the motor UI to select it with the rig edit tools. Move the scrubber bar to adjust the current animation time. Changing motor offsets with the rig edit tools, will change the keyframe on the scrubber bar or create a new one if there isn’t one.

Graph Editor

image

Right-click any motor UI and select “Edit Graph” to have it displayed in the Graph Editor window. In it, you can freely move around by holding LMB. You can also scroll in/out. Each Keyframe will be represented by a node, dragging it around will change its axis offset and time position. To change which axis will be modified, simply click on X/Y/Z at the bottom of the window. All changes made in the Graph Editor will be mirrored in the Time Line and vice-versa. Hold Ctrl and drag/click your mouse to select multiple nodes.

image

Keybinds

Spacebar = Play animation
R = Switch rotate/position tool
Delete = Delete selected
Ctrl + C = Copy selected
Ctrl + V = Paste selected
Ctrl + R = Reset selected
Ctrl + G = Add Keyframe at mouse position
Ctrl + Z = Undo
Ctrl + Y = Redo

(Z and Y can be switched dependig on your key layout)

Getting started

  1. Install rFrameAnimator
  2. Select the rig you want to animte
  3. Click on the plugin button
  4. Start animating!

A more thorough explanation of what every window does, can be found in the “Features” section above.

Contributors

Many thanks to @Coyann for helping me with the design + feature ideas and to @Daireb for helping me with some math problems.

Disclaimer

This plugin is in Alpha and has not yet been tested extensively. Please be aware of potential bugs.

139 Likes

So glad it’s out! Now there’s finally a public alternative to Moon Animator and the default one.

7 Likes

Jawoll wird gleich installiert ! :wink: VIELEN DANK!

https://gyazo.com/d292fa3685d4f3f52e25243b22d6d1d3

wo kann man die animations priority setzen ?

4 Likes

Looking so good, not sure of how many bugs could it have or how does it feel like animating with it but this will definitely be a cool surprise for my animator.

2 Likes

Da müsste rechts auch ein Menu Widget sein, bei dem kannst du das einstellen. Überlappt sich bei dir bestimmt mit dem Property Widget.

1 Like

What makes this better over Moon Animator? As far as I know Moon already provides most if not all of the features your animation editor provides.

2 Likes

Is there a video of what this plugin does?

Here you go

If you want a more in in depth explanation, then you should read the “Features” section.

9 Likes

It would be new to me, if Moon Animator suddenly had a Graph Editor. Moon Animator also doesn’t have most of the features I mentioned in the “Why should I use it?” section.

3 Likes

Cool, you don’t find use in the Graph Editor. That doesn’t mean other people don’t too.

You are just straight-up rude. The point of rFrameAnimator isn’t to create an entirely new way of animating. It aims to bring better UI, a couple more features and is also being actively maintained. Please change the attitude of your posts as comments like these can really be disheartening to creators.

If you want other features, make your own Animation Editor and stop bothering people who didn’t add them.

21 Likes

If you want more people to use then you should have the already existing features & features that are exclusive to your plugin. Having just 1 custom feature and a lack of easing styles won’t attract people’s attention.

2 Likes

Having pretty much the same features and some more makes it already better than Moon Animator. Again, insulting is against the rules. Change your attitude.

7 Likes

This conversation is off-topic. If you have anything to add, PM me. (Would be better for you if you’d just stop)

11 Likes

Moon doesn’t have a graph editor, from what I understand, which is a huge selling point for a lot of animators right now, and is what pushes most people to blender. Though I’d love to see a little more than just a graph editor, such as a way to create functioning IK rigs for r6 like blender can.

13 Likes

Seems like a great and well-designed plugin! I like how you kept the workflow consistent so the learning curve isn’t too great when switching between the default animator and this one. Although, there’s one aspect of this plugin I’m concerned about: the Id system you make for individual keyframes:

self.Id = math.random(-100000000,100000000)

Although it’s 1 in 200 million, this system might pose as a bug to the few people who get the same Id for 2 or more keyframes (maybe even multiples of times).

Example

For each user with 1 animation:

Having 1 keyframe, there’s a 1 in 200M chance
Having 2 keyframes, there’s a 1 in 100M chance
Having 4 keyframes, there’s a 1 in 50M chance
Having 8 keyframes, there’s a 1 in 25M chance
Having 16 keyframes, there’s a 1 in 12.5M chance
Having 32 keyframes, there’s a 1 in ~6.2M chance
Having 64 keyframes, there’s a 1 in ~3.1M chance
200M / #Keyframes

Considering more keyframes:

Assuming each animation has 64 keyframes:

Having 1 person, there’s a 1 in ~3.1M chance
Having 4 people, there’s a 1 in ~781.3K chance
Having 10 people, there’s a 1 in 312.5K chance
3.1M / #People

It becomes even more frequent if you consider that people make multiple animations:

Assuming each animation for each person has 64 keyframes:

Having 1 animation, there’s a 1 in 312.5K chance
Having 2 animations, there’s a 1 in 156.3K chance
Having 4 animations, there’s a 1 in ~78.1K chance
312.5K / #Animations

Keep in mind, this is only the outcome of 10 people with 4 animations with 64 keyframes in each animation. There will obviously be more people that make more or fewer animations with more or fewer keyframes which will probably decrease the chance.


Anyway, hope you update this plugin with more features!

7 Likes

DevForum is a place for constructive & civil criticism. Making ad hominem remarks towards a person you do not know is ignorant and should be refrained from.

15 Likes

Posting some of my own criticism here:
I find it an interesting approach to implement features that Roblox severely lacks (such as, the graph editor), and definitely believe like this is a step in the right direction, but my biggest issue with this would probably be the UI. A lot of the buttons are overly big & have too vibrant colors, along with some color choices that could have been better all around.
My biggest gripe would be this menu:
image
which can definitely be improved upon. Some other remarks:


While retaining Roblox’s arrow shape isn’t necessary, I definitely feel like the colors could be less vibrant & have the box be smaller overall.

5 Likes

Thats is indeed true, although the chance is pretty slim. I couldn’t find any proper solution that doesn’t involve a HTTP-Request, so for the time being I changed it to:

self.Id = tick() + math.random(-100000000,100000000)
3 Likes

One solution is to have a check every time you make an Id and change the Id if there’s already one with the same Id. Or, you can just name the keyframes 1 number bigger than the last one created.

6 Likes

This is going to be really epic! I have a very idiotic suggestion because I don’t know too much about animating inanimate objects but I suggest making an animation editor for objects! Either way, really good plugin! :smiley: