Project motion/transforms of one bone to another (fix root motion)
Let me first try to describe the problem (maybe there is better way how to solve this). Also be warned I am DAZ Studio newbie!
I have collection of animations I need to transfer into Unreal Engine but I need the root motion feature. However, DAZ character (Genesis 8.1) does not have a root bone directly and the whole animation is done from the hip bone down to its children. When I export the character and the animation to the FBX file and import it into Unreal Engine, in place of the root bone, it says Genesis 8.1 so if I remember the object in DAZ studio and repeat the steps I have root bone in Unreal Engine which, however is staying in-place during the whole animation so I cannot use root motion feature in UE to actually move the character in the world together with animation.
I was able to fix this in Blender by from DAZ Studio and importing into Blender using the latest DAZ to Blender plugin. In Blender I did following:
- Created a placeholder bone where I copied the hip bone transforms.
- Then I deleted transforms - rotations from hip bone.
- I used Blender bone constraints to mimic XY translations and Z (in blender up/down axis) rotation (IN WORLD COORDINATES) on the root bone while all rotations i projected back to the hip bone.
By projecting - not copying stuff, animation played as expected with root bone as a parent to the hip bone.
I am trying to achieve the same in DAZ Studio as I feel that exporting to Blender, fixing it there and then to UE is too much work to achieve this and I am wondering if I can do the same directly in DAZ for animation I have.
My initial though was to replicate the steps I succeeded with in Blender (with the placeholder) but I do not know how. I want to project the whole animation transforms to the placeholder bone and then project translation to the Genesis 8.1 object with Y (up/down axis) rotations so that the whole character is moving and rotating with the animation. At the same time I want to project hip bone rotations ONLY back from the placeholder bone so that the hip bone is playing as before.
I am very new to DAZ Studio and I am totally lost with trying to achieve this goal. Maybe more important question is, if there is any other way I can achieve the root motion in DAZ Studio for importing it to Unreal Engine?
I would be thankful for any kind of help or pointing me to the right direction.