Blender rig exporter/animation importer

Did it recently stop working or has it never worked for you?
You can still try to load the Mixamo-generated FBX into blender directly (i.e., through the file menu) and ensure it looks properly there. Any recent blender version should work fine, anyway.

3 Likes

Recently only, I am going to try to re-install and see if it helps!

1 Like

Appears that blender 2.79b does not work with the animation editor - so I’ve had to resort to the older version (2.78b)

2 Likes

Managed to fix it!

Re-installing Blender to the latest version seemed to help.

1 Like

Man this thread has grown a lot since it first started! Such a great thread. I have a suggestion for the plugin which would make it a whole lot better for animating ROBLOX characters. Is it possible to make a rig that has elbows and knees bending in the correct direction with IKs enabled? The stiffness method doesn’t really affect the rig for me that much. It’s important to have pole bones in there as well so you can manually point the elbow to be rotated at a certain direction. I have a rigged R15 character with the desired characteristics in Blender, and it works for ROBLOX!


Is it possible for anyone to make the rebuild rig button make a standard R15 rig inherit these characteristics? That would make the animation look a lot more correct if you are hand animating, which is important!
If anyone wants to animate with the file, or you need a better idea of how the rig should behave, please download the .blend file!

https://drive.google.com/file/d/1qqhsP8dyjyyMwgUxk-HmuOhMpVUpaqDD/view?usp=sharing

11 Likes

The primary weird thing of the R15 rig is that the arm bones are offset in an odd way. It can be re-adjusted with a little script:

import bpy
from mathutils import Vector, Matrix

translation = Vector((.5, 0, 0))

for bone in bpy.context.selected_bones:
    bone["nicetransform"] = Matrix(bone["nicetransform"]) * Matrix.Translation(translation)
    bone.translate(translation)

bpy.context.scene.update()

(select a bone in edit mode, then run to translate it by translation)
It’ll also adjust some internal transformation matrix that tracks the difference between the blender rest pose and Roblox rest pose, so the shifted animations imports back in Roblox properly.

After that IK works without any issues for me, even with the plugin built-in IK constraint generator. Very slightly offsetting some bone joint in edit mode to force the IK solver to prefer a certain direction is the easiest way to control in which direction the elbow/knee should point (which you seem to use in your blend file too, plus a pole bone to aim that), alternatively rotating the bone in edit mode by 90 degrees (that second approach requires updating nicetransform too).

I could add a rigging mode (sounds like a very useful idea, thanks!) that also offsets the upper arms like described above, but aside from that I don’t really see any other issues. Did you do anything else to make IK behave properly?


Note that this script does some operations in world space and others in bone space. Usually this works fine, but since R15 rigs generated by Roblox are flipped around by default, you can either rotate that rig around by 180 degrees before exporting it in Roblox (recommended), or replace bone.translate(translation) with bone.translate(-translation) in the script above to make it “work” with a flipped rig.

3 Likes

This is a little vague, you mind clarifying with a video tutorial please?

More specifically the process of establishing the desired IKs on the rig

Hopefully this helps a bit explaining how to get a length 2 IK chain working properly (in a similar way you did it);

1 Like

I’m attempting to import animations from Mixamo but whenever I upload the character to the website to try out the animations and see which ones I’d like to import, the character doesn’t move at all and the bones look like this. It’s also not spawning where it’s supposed to in BlenderScreenshot_188

Using version 2.78

Make sure the Roblox rig is in the center of the workspace when exporting it (looks like it isn’t?), the armature does not currently center around the root part.

Able to export in the right way now, only problem is Mixamo won’t load when I click an animation

I had problems with this myself but found out it was the way I was setting my rig up in Blender and Roblox. Trying to export was a pain but I had done it properly multiple times and found out even IF the animation runs.
Try exporting it back into Blender when you save the animation and see how it looks inside Blender, sometimes it would look like it’s messed up but it isn’t. idk I’ve had quite a few experiences like this with Mixamo.

2 Likes

Do you have reproduction steps? Mixamo still works flawlessly for me.

Some have more success just exporting the armature to Mixamo though (i.e., not the parts). (Or by using some R15 rig with skinned bones, I thought that was posted somewhere in this thread too…)

3 Likes

After 8 hours I got it to work, tedious but eventually was worth the long process

Seemed to be the rigs for me. When I used a character importer it worked fine

Looks like a cool way to make custom animations.

I’m currently testing exporting an animation but I get this error whenever I click the export button:

Am I doing something stupidly wrong here?

You likely replaced the originally generated armature (during rig import), which discards important metadata. You can use the Map keyframes by bone name button to copy animation data from the bones of one armature to the generated armature if necessary.

2 Likes

Turns out it was because I was duplicating some bones (for IK purposes). All good now, thanks!

Great plugin, by the way. I’m learning how to rig and animate using Blender (I apologise for being a noob) for my current project. Animating, for me, has been the worst part of development, and I’m counting on this to change that.

I did exactly the same as the Videos why does it turn my Character 180 Degrees when playing the Animation?

And my Character is also floating…

https://gyazo.com/ca2aacdbd96869b7395add2688af9f0c

How do I fix it?