Home Website Youtube GitHub

Parasitic rotations / translations

Hello !
I’m stil struggling with clean orientations and translations for a custom game biped.
Here is some screenshots :
image


I wrote some POST scripts to reset joint orients or override values inside some nodes like matrixConstraint but could produce side effects.

It happens mainly on spine and neck (EPIC_spine_cartoon_01, EPIC_Neck_02 are the ones I use).

What is the proper way to have a rig that has minimum parasitic rotations / translations ?
Also, I think the best way to create a game-ready rig is to use controls that orients bones only to his main children, not be oriented as a tangent of the curve. That’s why I have maybe half of the guides unusable for me.

Do you have any idea ?
Thank you in advance, and congratulations to the devs for the new release of mGear 5.0 ! :blush:

Rémi

1 Like

@remicc Not sure if I understand the issue. :sweat_smile:The translation can be ok with values, right? and about the joint orient value that always used to ensure that the Rotate values are 0,0,0, right?

if you can give me some examples on the expected results vs the current ones. I will check it :slight_smile:
Thanks!

Well in my humble opinion, i think the less parasitic value we have, the proper skeleton we get. Ideally, If I create a skeleton by hand, i would put each joint pointing toward his children, so only X value will be different than 0. If a joint of the spine has translations in Y or Z, it means that my parent joint is not aiming properly to the joint.
Also, if I want to create some automations from the skeleton, it would be better if I have no offsets.
It is ordinary to have multiple transformations in multiple axis for the first joint of a chain, but I would like to avoid it on each children of the chain.

Here is an exemple (a little bit exagerated) :


Left side : wrong orientations
Right side : clean orientations

Is my explanation better ? Let me know if :blush:

1 Like

That’s clear. To only have a single axis in the translate is the most clean.

But what about the jointOrient? I don’t know if that’s avoidable, as far as I know. I would expect any arbitrary values (1, 2, or 3 values) in the jointOrient.

@remicc Thanks for the explanation :smiley: I get it now. Specially in joint chains can be cleaner.

But as @chrislesage commented JointOrient will have values in some places, like the first joint or the knee/elbow

I will create a ticket to research this :slight_smile: