Hey guys, I’m new to Unreal and coming from Unity (with almost 4 years of experience).
I’ve got a bunch of things I want to talk about that are driving me crazy. First and foremost, to my frustration, the animation handling in Unreal seems a bit messy. Sure, there are many options and features that are impressive and surpass Unity’s, but it goes both ways. I don’t understand why, but in Unity, you can use any animation on any humanoid right out of the box. In Unreal, you HAVE to pick a skeletal mesh, meaning every animation is tied to a specific character. Okay, fair enough. There are multiple ways to handle this, especially for things like changing characters in character creation, but in my case, it’s annoying. I have animations that only work with a specific character I imported, and since this character has a different bone structure, the animations work well with it but not with the default mannequin. So… nobody might read this, but whatever.
My goal now is to make the animation compatible with the mannequin or any other character I might want to use in the future. In Unreal, you must create an “IK rig” for the imported character and then create an IK Retargeter that handles the transition between the imported character and the mannequin, for example. But here’s the main reason that annoys me so much: if the character’s bone structure is slightly different from the mannequin, the IK rig has no information about the bone chains. So, you HAVE to MANUALLY set up EVERY CHAIN for EVERY character you want to use. That’s a really big no-no, I mean, come on, is this truly the intended workflow?
And it goes even beyond that. My guess would be to make it just like I managed it in Unity. In Unity, every humanoid has an Avatar, and this avatar stores all the information for bones, like the head and arms. So, in a script, you can simply reference these parts like “humanBodyTransform.leftLeg.” In this way, you can create a fully automated setup script for such things.
I’m sure you can easily write a Blueprint or C++ class that handles such a feature, but my understanding is too little, and I don’t even know where to start.
The whole thing is driving me crazy because Unreal has so many epic features like Nanite, Lumen, and more. But when it comes to simple things like handling animations for a character, everything breaks. There are thousands of tutorials for workarounds, which is cool, but does it really have to be this way? I want to create cool things in Unreal, and these issues stop me every time because I have to research up to the last Google page to find a solution. But then, the solution only works in Unreal 4, thats a downer…
So, the question is, what should I do? Should I waste my time just manually applying the chains, or should I spend months learning how to create a C++ or Blueprint script? Or should I buy an asset for 70 bucks and then realize it’s not what I need?