[Opt-out Phase] Introducing Animator Retargeting for Supporting a Single Animation on Multiple Rigs

As if animations didn’t already have enough problems with making your arms and legs snap, this just makes it worse!

What exactly is animation blending?

The goal would be to move away from that dependency.

3 Likes

Did I just discover a hidden feature related to this?

A very old “to do” list item was to fix my custom animations. Specifically, I simplified my avatar by removing barely used shoulder bones in the rig. There are a few corner cases where the animation was not “retargeting.”

Note the arms are flailing about.

However, I noticed the same animation shown through the Animation Editor re-targeted! I have never seen this before. I just re-saved the animation and it works. I did not have to use my new FBX file.

Not complaining! I have turned “Retargeting” on, in hopes it will be expanded to all animations before I go live.

8 Likes

Joint-orientation retargeting is part of the feature. If the animation and character don’t have the same reference pose (e.g. one is T-pose and the other is standard R15 “I-pose”), the retargeter will correct this.

6 Likes

On the up side, this saved me hours yesterday. Thanks!

I suppose one down side is that I ultimately selected a custom rig to make it unattractive to animate without my blend files. That was most of the reason I didn’t go for S1-S15 compatible. Now I suppose as long as the rig has the right names, any rig will do.

I was taking advantage of lack of functionality. I’ll live! :slight_smile:

2 Likes

So this works on custom rigs if the bones match the R15 naming convention?

It feels like it should work in any case where the bones are named the same. I use a lot more than 15 bones, but there are some overlaps with the R15 naming convention. Custom to custom, and custom to r15… it should work.

It’s really handy to get around the weird R15 bone orientation.

1 Like

This feature seems to work great for our rig that is setup in “A” pose! Only issue is the Idle animation isn’t supported yet, any idea when more support will be coming?

3 Likes

Does this work with S1 rigs or just S15 & R15 atm?

1 Like

My models are closer to s1. It works for me.

2 Likes

That’s interesting, I imported the Lola S1 from Roblox to give it a go and this feature wasn’t working for it, there must be some nuance I’m missing.

This is a nice addition, especially for me; I’ve noticed that the slightest difference between avatars (body scaling, parts, etc.) can offset their arms enough to make drinking animations look weird. Trying to fix this with individual animations would require a practically infinite amount of them, or just limiting what scaling/parts are allowed in the game. Animation retargeting came at the perfect time!

I’ve noticed every time I close then reopen Roblox Studio, Retargeting is reverted to the “default” setting instead of staying on “enabled”. Is this a bug or is it intentional? Retargetting works well in my incomplete “experience”, so I’d like for it to stay on between editing sessions. Here’s a good example of retargeting I’ve discovered:


This pose was made with a woman dummy. My character uses the girl arms so her hand clips through the table.

With retargetting, her hand is on top of the table, just like the original animation! It’s very cool.

Before that pose, I animated my avatar holding that cup with both hands, using an almost-exact import of my avatar as the “reference” rig, using the same body part combination and proportions.

When my avatar plays the same animation, her left hand, which is positioned close to the cup, doesn’t appear to still be holding it, even when retargeting is enabled. Is this normal?

4 Likes

We are happy to announce the beta for saving a rig with animation data.

This will allow the creation of custom retargetable animations for R15. The system will currently support leg retargeting with upper body support on the way. Animations exported with this beta feature now should also be compatible with future retargeting system updates.

To enable the feature, head to File > Beta Features:

4 Likes

Hey thanks for trying it out!
The behavior you pointed out is expected for now, as we are still in the process of enabling retargeting ik on the upper body.

Once upper body is enabled, the arms and hands should start to look better. :slight_smile:

4 Likes

Any plan to expand this to custom characters to solve the following issue?

For our use-case, we don’t need anything sophisticated. All we need is a way to change the factor of the keyframes’ position value on-the-go. Like how you can do AnimationTrack:AdjustSpeed.

Something like AnimationTrack:AdjustScale or :AdjustPositionFactor would be great.

Right now, we need to upload several versions of each animation like “Large_Dragon_Walk”, “Medium_Dragon_Walk”, “Small_Dragon_Walk” because each keyframe’s position remain static no matter the rig size. Like if one keyframe has position Vector3.new(1, 0, 0), that looks fine for the large dragon’s right leg, we’d like it to be Vector3.new(0.5, 0, 0) for the smaller dragon.

5 Likes

Any update on this? Its been almost 4 months now, and no news.

Being able to scale the animation Motor6D offsets with code would be a huge time saver. Not even automatically, just something like an AdjustScale() function would still be a very big improvement.

3 Likes

@SirMing @BackspaceRGB
I think both suggestions are similar and good points.

While the retargeting feature isn’t necessarily aimed at exposing new code APIs such as AdjustScale() on animations tracks. The end results we are working towards are inline with that.

But to answer the main question:
Once R15 support has been fleshed out and stabilized, our long-term goal would be to expand to cover more characters (custom etc.)

4 Likes

This is reassuring.

Is there an estimate to when support for custom characters/R6 will be added? I assume its not in the near future, but I might as well ask.
And also, would it work the same way for custom characters? Where it “just works” when you upload an animation and use it on different scale characters?

R6 would likely be a bit easier due to the simplicity of the schema. As for custom characters, no hard schedules are set…I can say it will take longer due to the added complexity and may be a gradual release that gets fleshed out over time.

The “it just works” aspect will of course be a core guiding principle :slight_smile:

2 Likes