Home Website Youtube GitHub

Lip issues. Rotation

Hi!

Im having problems with the lips rigger. I found someone else had this problem but couldn’t find any solution, even parenting. Maybe I dont know what should I parent to.

The lip joints rotates when I rotate the neck controls.

I can upload the rig file if necessary. Currently working with Maya 2019 Mgear 3.6.0

Thanks a lot :slight_smile:

An uploaded rig would be helpful.

Also, can you please show the settings you used to build the lips?

1 Like

Hi!

Thanks a lot for answering so quickly.

Just realized It is important to have the controls group in world coordinates and parent to the head the curves only.

The curves pivot are at 0,0,0, I need to check how they work.

Thanks a lot :slight_smile:

Reviving a super old note because this is still happening. I can confirm constraining the curve group to the head fixes the issue

I’m not sure what the problem might be, but I have been using the Lips facial tool in several rigs and didn’t have this rotating issue at all. Can you upload a video or maya file to have a look at?

Hey Milio, I’m so sorry for the late reply.

This is the problem that I’ve been having:

Constraining the curve group to the head ultimately fixes the issue though.

Can you share a screenshot of the facial rigger window? This is my usual setup, but it also needs a post-script to constrain the lips properly.

Pretty old code using pymel, sorry!

import pymel.core as pm

headJoint = pm.PyNode('mouth_0_jaw_Jnt')

# Constrain ALL the lip rope nodes that are under "lips_C_rope" to the headJoint
if pm.objExists('lips_C_rope'):
for each in pm.PyNode('lips_C_rope').getChildren(type='transform'):
    pm.scaleConstraint(headJoint, each, mo=True)

# Constrain the corner lip controls to the head control.
if pm.objExists('lips_R_corner_npo'):
lipNpos = [
        'lips_R_corner_npo',
        'lips_C_upper_npo',
        'lips_L_corner_npo',
        'lips_C_lower_npo',
    ]
for each in lipNpos:
    pm.scaleConstraint(headJoint, pm.PyNode(each), mo=True)

# Constrain lips_C_crvs to the headJoint
pm.parentConstraint(headJoint, 'lips_C_crvs', mo = True)
pm.scaleConstraint(headJoint, 'lips_C_crvs', mo = True)  

1 Like