"World Space" or disable inherit transform from parent?

Hi, I am looking to author character animations directly in Unity with the help of the Animation Rigging package.

I am wondering, how should I approach my rig setup to prevent controllers from inheriting rotation or scale transforms from their parent, similar to the following?


As of now I find rigging in Unity takes me a lot of time, and having the option to automate certain rigging steps would be a welcomed addition. (Maybe it's already possible by scripting my own constraints? I'll have a look.)

The following link is an add-on I have been working on for Blender, but shows pretty much how I wish I could rig/animate in Unity using the new Animation Rigging package, easily setting up and modifying my character rig as I go.

You can definitely extend the Rigging Animation Package with C# for any custom behavior you want.


1 Like

Hey, building your own constraints can indeed be a very powerful solution to build your rig exactly as you want it. Regarding the problem you are facing with inherited transformations you may be able to solve this using the multi-referential constraint that exists in the package. You can have a transform at world origin to create a reference point in worldspace. Next to this you will likely need to use the bidirectional motion transfer more info on that here and here.
I think those two pieces should give you the desired behavior. I would like to emphasize however that this is rather manual and not like the one click solutions found in animation tools. Also both are rather advanced workflows.

Thanks @danUnity_1 and @Jebtor

And yes it seems writing up some custom constraints is the best way about it. I am not that much of a coder so it will take me some time, but in the long term it should be worth it rather than doing a lot of back and forth between menus.