Requesting Help/Advice with Managing Rigs and Animations in Blender and Unity

Hi everyone,

I’m working on a game in Unity, and I’m running into challenges with character animations, particularly with exporting from Blender and managing the logic in Unity.

Here’s the setup:
- My game is a racing game inspired by Sonic Riders. Characters ride different vehicles (boards, bikes, and skates).
- Characters and vehicles are separate models. Characters have shared rigs, but some have unique features (e.g., extra tails or wings).
- Unity version is: 2018.4.20f1 (No, I won’t update it).

Issues I’m Facing
1. Exporting Animations from Blender
- I managed to get one character’s animations working in Unity, but I forgot to take notes, and I do remember it being very finicky (there was a setting in a window somewhere with the animations). Animations aren’t exporting with the FBX file consistently.
- Any tips for properly exporting animations with characters from Blender?
2. Reusing Animations Across Characters
- My characters share rigs with minor variations (e.g., one tail vs. two tails). In Blender, animations can be reused (just ignoring what doesn’t match) but Unity doesn’t seem to allow this unless the rigs are identical.
- Is there a way to reuse base animations across characters and layer/override animations for specific features?
3. Unity Humanoid Rig Issues
- The humanoid rig type does allow for animation sharing, but using the humanoid rig seems to introduce weird behavior, it seams to keep the pelvis rigid and makes it the root, and it mangled my animations, and my characters need significant pelvis movement due to all the skateboarding inspired movement, so that’s not good.
- Is there a way to make the humanoid rig work for this use case, or should I stick to generic rigs?
4. Performance vs. File Size
- I’ve heard that Unity performs better when each character has unique animation assets, even if the rigs are identical, that way it just uses the deformation data, instead of moving the bones and having to calculate the deformation data on the fly, but I could be wrong, this has all been confusing. However, duplicating every animation for every character seems inefficient.
- Should I create unique animation files for each character, or can I reuse base animations and add character-specific adjustments? And if so, how?

Questions
- How do you approach animation logic for characters with shared rigs but unique features?
- How can I reliably export animations from Blender to Unity (e.g. FBX export settings. and I wanna say I had to adjust the settings in some window, but who knows where that was)?
- Are there any tutorials or resources you’d recommend for Blender-Unity workflows and animation management?

Thanks in advance for any advice or resources! I’d love to hear how others handle similar setups.

You may have to though, depending on the target platform. You won’t be able to publish to mobile platforms with this version and web will be severely limited.

Would you care to explain why won’t upgrade? Your question sounds like you aren’t that far into the game. Consider that you are basing your work on 6 to 7 years old tech and there’s a high chance that one reason or another may force you to upgrade anyway.

For example in order to use a store asset or a free script that’s only compatible with a newer version. You will also find less help, and tutorials will be confusing since you’d have to dig deeper to find those that were created for 2018 (or maybe 2019/2020 at most).

Unclear what you mean by that. You need to be specific about the issue you have.

For good reason. Otherwise the animations will be mangled. Animators therefore build their characters onto a single rig. You can disable/ignore parts of it where necessary, ie the tail. One way of doing that would be with Avatar masks.

The only solution is called humanoid animation retargeting (sometimes also: remapping) which is something some store assets do, and I believe the new Animation system (announced but not available) will also have this feature. But it won’t prevent animations from intersecting parts of the mesh, another reason for sticking with the same rig throughout.

And retargeting only works with humanoid animations to begin with.

I suppose it mangled your animations because they weren’t designed to be humanoid animations.
With the pelvis (hip) at the root you can still do all animations, except the ones you seem to have already animated in a way that perhaps the feet also move the pelvis rather than vice versa.

You should research what the differences are and whether the pros and cons are acceptable to your use case. If your characters are human beings then IMO they ought to be set up to use humanoid animations. The generic animations are intended for animations that can’t use the humanoid type of skeleton (two legs, two feet, two arms, two hands, one head on a neck and a spine), for instance animals and machines.

Can’t say for sure but it sounds like you misunderstood this. Nobody creates unique animations per each character, on the contrary animations are shared as much as possible to avoid extra animation work as well as additional testing.

You don’t need recommendations really. If you go search for these there are plenty of video tutorials on the subject. Just watch any two series of two separate authors and you probably learn most of what you need to know, and the rest you can google as it crops up.

1 Like

ok so, should I edit my post to clarify things, or just add a comment with the clarifications? not familiar with the culture or whatever on that

also Merry Christmas, didn’t think I’d get a reply so soon, thought it might not be a good time to post, but eh I felt like it and that doesn’t happen often.

Just add a reply. This will send out email notifications. Editing the original post will not get noticed.

so on not updating Unity:
why that version? that was the version I started with, it was what this one game needed if you wanted to make things for it, and so as it was the version I was familiar with that was what I made my game in.
why not update it? that game did eventually update to a new version, but 1) when I updated to that my project corrupted (yay for backups) and it did that for other updates too. 2) newer versions are just so big, like I made a fresh project in a newer version and the project was over a gigabyte large, a whole gigabyte! talk about bloat. 3) newer versions despite having a better input system didn’t support my game pad, it would support most everything except that one, and as that’s my target game pad that’s not a good fit. 4) I just don’t need to, that version works for my target platform, and with all the issues I’ve had with new things, why update? its just trouble.

on exporting fbx, and getting the animations to go with it. I can’t seem to find the settings I need to set/adjust to get the animations to export. I know you have to make sure they are all a part of some thing, and none of them are active in it, but I forgot what that was, or where it was, and I can’t figure it out.

so on making animations work for different characters, in theory since I made all the animations with the same rig in Blender, and rigged the character meshes to that rig, the different character meshes should work with that rig for the animations in Unity, right? like their meshes have their vortex groups, with the weights, and those vortex groups should match the bones of the rig, and so it should work, I should be able to just add the rig to the character meshes rig reference, and the animations should work, just make sure the refs are right, the animator and such, and yet, it doesn’t work. the only reason I can think of is cause I copied the rig to mesh it with the mesh, instead of using the same one, that or cause the animations are in the one characters fbx, instead of there being just the rig and animations, and having the meshes be separate, and yet it does let me plug those bits into the other character, so it seams like Unity doesn’t care about that, so why isn’t it working?

so using a humanoid rig, I can’t find anything actually talking about it, people just say ‘use it’, like when I looked up what an ‘avatar’ in Unity was all its stuff said was ‘use Maya’ like gee thanks, that’s totally informative, could I get actually documentation on it? I can’t seem to find things actually explaining it. it’s like when you try to learn code and you’re following a video and they aren’t explaining the code, and you don’t know how those code things work, so all you can do is copy it exactly, and every coding ting says that’s bad, that’s very bad, you aren’t learning code that way, so go take some coding lessons, and now that you know how methods, arguments, parameters, returns, and so on work, you can better get the code, and now you can mess with it, and realize this video also doesn’t get the code much, so you leave and find something better. it seams I’m there with this stuff, but can’t find anything teaching this thing.

on the performance thing. ok yay for answering that question, so I don’t need to make a version of the animations for everyone, now if I could just get the game to let me reuse them.

on the recommendations thing. I’d really like some recommendations for things to watch/read to learn these things so I can do it, I’ve tried to find things that go into it, and some how I can’t find anything that actually goes into it. now I get a lot of these question are Blender things (like getting the animations to export), but a good chunk are Unity things, and most of them are Blender-Unity things (like how to set up and make these animations, rigs, and meshes so they work in Unity), so that’s gonna be fun to find info on.