6to15: R6 to R15 Animation Converter Plugin

Roblox has been intentionally sabotaging the R6 avatar style for what feels like the time since R15 was originally added to the game. Every new avatar feature Roblox has added bar UGC has been excluded from R6. Sometimes arbitrarily, like MeshPart heads and accessories and by extension dynamic heads. This presents a challenge to the many developers who prefer R6 to R15 as a stylistic choice: the players who prefer their full avatar to a reduced version they had no intention of ever playing as. Ever since Roblox’s reveal of their insultingly bad “R21” rig, and their plan to use it to deprecate R6 entirely, this problem has been amplified. This plugin’s goal is to at least partially resolve the issue for R6 developers desiring better favor from players and Roblox itself. Similar plugins exist, but unlike 6to15, which aims to join the old with the new, these plugins are made with the intention of replacing the look and feel of R6 entirely. They include inverse-kinematics, which look great, but can be very different from the animator’s intentions. Others still are paid plugins.

How To Use
Use the Explorer to select one or more R6 KeyframeSequences (Animations are representative of an asset on the Roblox CDN and cannot be modified directly), then go to the Plugins tab and click the “Convert R6 animation to R15” button. The plugin will make a copy of each KeyframeSequence you’ve selected and convert it to an R15 version, then select the resultant KeyframeSequences. From there, you may upload the R15 animations as normal.

Issues
For any animation, an Animator determines which joints to transform for a given Keyframe based on its Poses’ Names and their Parents’ Names. While I have not yet attempted to reproduce the following in testing, it has been brought to my attention by @Fifkee that the Poses in a minority of resultant animations may be structured incorrectly as to have joints ignored by the Animator. To my understanding, most animations are unaffected, but any problem found while I investigate the issue will be fixed.

I have, dare I say, exhaustively tested this plugin before publishing it on the Dev Forum, and I can say that every individual Keyframe produced by the plugin should be 100% faithful to its R6 counterpart. However, the easing animations between Keyframes may be inconsistent to the originals. The most obvious case of this is that by easing a Left Arm from position 0, 0, 0 orientation 0, 0, 0 to position 0, 0, 0 orientation 0, 0, -180, an R6 left arm will pivot clockwise relative to the head, while the resultant R15 left arm will pivot counterclockwise. This behavior is impossible to change with an animation converter alone due to differences in R6 and R15 rigs, and practically unnoticeable without specially crafted animations to display it, so any fix is outside the scope of this plugin. If you find any other issues with the resultant animations, please contact me.

Download
This plugin is available for free at 6to15: Lossless R6 to R15 Animation Converter - Roblox

Demo

Final Thoughts
I hope there are developers that find this tool useful. Using it, you can make a visually R6 game compatible with layered clothing, facial animations, avatar scaling, emotes, mesh deformation, and whatever else Roblox decides to add to R15 avatars. Most R15 packages playing R6 animations, to the untrained eye, are indistinguishable from their R6 counterparts, except for the 1.0 rig. I recommend using a custom rig for 1.0 avatars if this type of precision is important to you. If I had one, I would share it here. If you plan to modify the default R15 animate script, know that the R15 animate script plays back animations at a different speed than the R6 animate script, so make changes accordingly.

21 Likes

This plugin feels like somebody cursed your limbs to never be able to bend again and this is what it looks like.

5 Likes

I think this is rather a copy of the r6 animation so you don’t have to recreate it from scratch to edit it for R15 lol

1 Like

Roblox should take notes on this. :rofl:

2 Likes

If they just uploaded an R6 animation pack for R15 nobody would ever complain about the removal of R6 again except for hardcore obby players.

They made the converter to ensure R6 games still function properly, not just look the same. Their converter sucks though. It doesn’t look or work the same at all.

this is like, very cursed, but also, very awesome.

2 Likes

pov: you can’t bend your limbs:

1 Like

I was just in need for an animation converter and stumbled upon your plugin, it was an absolute lifesaver. Your work is amazing, Great job!

1 Like

…yeah.

I don’t think I specially crafted anything for anything, so I’ve no clue what’s going on.

1 Like

I guess I have about as much nerve as I suspected when I dared to say “exhaustively”. Sorry the plugin did not work for you, and thank you for telling me about it. I believe the problem is caused by the hierarchy of Poses within each Keyframe. More specifically, the Poses are all there, but the Animator cannot resolve the joints to apply them to. I can probably fix this bug on my own, but it would be very helpful if you could send me the source R6 KeyframeSequence used in the video as an rbxm file. If you have other broken animations, feel free to send them, too. I will edit the thread to acknowledge the bug, and I will reply and update the thread once again when I have fixed it.