Mouth Open on Daz Character from CC3 to Unity


https://forum.reallusion.com/Topic398039.aspx
Print Topic | Close Window

By cloud.ninja - 6 Years Ago
I followed the tutorial found here: https://forum.reallusion.com/397639/Special-Notice-FAQ-for-CCUnity-AutoSetup-Script and was able to get my Daz character imported from CC3 into Unity.

My new challenge is that with applying an animation, the character has it's mouth hanging open. See attached file "MouthOpenBug"

My animation works with other imported Unity characters but not Gen 3 or 8 - it leaves the mouth open. When I go to configure the CC_Base_JawRoot to another bone - after I click Done & Apply - it reverts back to the CC_Base_JawRoot?! (see image)  When I go to Muscles & Settings, I can use the Open close slide bar under Muscle Group Preview and but when I try to close the mouth using Jaw Close under the Per-Muscle Setting - nothing happens?! (see image). 

I've also tried closing the mouth using blendshapes but it won't close the mouth all the way. 

I'm not able to script in Unity either. Any ideas to resolve?

with appreciation,
cn

By Miranda (RL) - 6 Years Ago
Hi cloud.ninja, 
May I know if you turned off the "Auto-Processing" before adjusting the bone?
By thanatopsis - 6 Years Ago
I've had that "mouth open" problem in Unity with a variety of 3D figured (DAZ, Mixamo, Reallusion) and different character rigs (Unity, Invector, Ootii 3rd-person controllers). I used to be able to fix it by editing the face bones in Unity and selecting "none" for the jaw bone. That stopped working recently for some reason, maybe in Unity 2018.2 or 2018.3. I finally got sick of it and edited all my animation files. I looked at the animations in Unity from the drop-down menu WIndow > Animation > Animation and "Animator.Jaw Close" = 0 on all my offending animations. I have to change the start and end points to equal 1. The only problem is most animations are read-only, so I have to find the correct animation (easier on a new project as there aren't 25 Idle and Run animations), select it, and copy it with control-D (command-D on Mac) then rename it to something like Jaw-Idle or Jaw-Run. Then I make Animator.Jaw Close = 1 and then drag that into the Animator motion parameters to replace the old one. On the plus side, I added an "out of breath" idle pose after a sprint with the mouth opening and closing.
I had to do that for a few dozen animations, but it works for now for my simple running/jumping game. I don't know if there is an easy way to use Layers or something to make one closed jaw state and make it overlay all the other animations. If anybody has any better ideas, let me know.
By cloud.ninja - 6 Years Ago
Thanatopsis - Thank you for your reply - I also couldn't set the jaw bone to "none". I will try your workflow - much appreciated.
By cloud.ninja - 6 Years Ago
Miranda (RL) - Thank you for your reply - where is that option?
By Miranda (RL) - 5 Years Ago
cloud.ninja (12/31/2018)
Miranda (RL) - Thank you for your reply - where is that option?


https://forum.reallusion.com/uploads/images/ede62715-536b-4a01-91a7-2a73.png
By Ryan Hayle - 5 Years Ago
It's a bit of a strange one this. The default in Unity is 0 and when you look at the jaw this equals to a half open mouth. So you have to edit your read-only animations and set the Animator.Jaw Close = 1, like previously stated by thanatopsis.

>May I know if you turned off the "Auto-Processing" before adjusting the bone?

I tried this and it made no difference. I noticed that when you untick the checkbox, close the window and open the window again the checkbox is set to true again.
Is this a bug?
By Miranda (RL) - 5 Years Ago
rjhayle (2/17/2019)
It's a bit of a strange one this. The default in Unity is 0 and when you look at the jaw this equals to a half open mouth. So you have to edit your read-only animations and set the Animator.Jaw Close = 1, like previously stated by thanatopsis.

>May I know if you turned off the "Auto-Processing" before adjusting the bone?

I tried this and it made no difference. I noticed that when you untick the checkbox, close the window and open the window again the checkbox is set to true again.
Is this a bug?

This is a bug as you described. 
We have fixed this issue, and it's under verification now.
Before the updated version release, please keep the window open when do any adjustment.

We also noticed that the mouth will be open when the character stays still, and will be close right when there is animation.
There is no further thing the auto-setup script can do at the moment. If there is more information, we will let you know.
By angelin.sirbu - 5 Years Ago
I have the exact same issue with the default CC3 settings. My character is the default male exported.

Is there any ETA on the fix?

Also, I cannot find the face blendshapes in the rigidbody.
By Miranda (RL) - 5 Years Ago
angelin.sirbu (3/13/2019)
I have the exact same issue with the default CC3 settings. My character is the default male exported.

Is there any ETA on the fix?

We'd like to clarify if this is the case you encountered.
https://forum.reallusion.com/uploads/images/56b60183-f0a6-4288-a5dc-9731.png

There is no motion file exported along with FBX file, which means there is no animation in the Animation Controller. When clicking play, we will see this result.
If this is the case you encounter, you can manually delete the Animation Controller, or add animation. 

 Also, I cannot find the face blendshapes in the rigidbody.

he question of blendshape location has been answered by a forum user, please visit your original post for details.
https://forum.reallusion.com/407209/Export-blend-shapes-for-faces-in-Unity 
By cloud.ninja - 5 Years Ago
I deleted my animation controller - the mouth is still open
I unchecked "Auto-Processing" AND left the "Auto-Processing" window open while making changes to the settings - the mouth is still open.
I played an animation - the mouth is still open.
I also noticed that after making changes in the muscles and settings, clicking "apply", then "done" - when I re-open the muscles and settings - the changes are *not* applied?
Any additional help is greatly appreciated.
My configuration is:
- exporting from DAZ using FBX 2011
- I did bake the head morphs instead of "heads." settings on export from DAZ
- used CC3 Pipeline and transformation feature.
- imported the CC_Character_Auto_Settings_Unity_2018.3_PBR_Beta_1.2 script into Unity
- imported my CC3/DAZ character into the CC_Assets folder
- Using Unity 2018.3.8f1 official release on Windows 10

thank you,
.cn


By Miranda (RL) - 5 Years Ago
cloud.ninja (3/18/2019)

I also noticed that after making changes in the muscles and settings, clicking "apply", then "done" - when I re-open the muscles and settings - the changes are *not* applied?

It seems to be wrong. I just sent you a private message, please record your operation steps and send it to us, thank you!
By angelin.sirbu - 5 Years Ago
Miranda (RL) (3/15/2019)
angelin.sirbu (3/13/2019)
I have the exact same issue with the default CC3 settings. My character is the default male exported.

Is there any ETA on the fix?

We'd like to clarify if this is the case you encountered.
https://forum.reallusion.com/uploads/images/56b60183-f0a6-4288-a5dc-9731.png

There is no motion file exported along with FBX file, which means there is no animation in the Animation Controller. When clicking play, we will see this result.
If this is the case you encounter, you can manually delete the Animation Controller, or add animation. 

 Also, I cannot find the face blendshapes in the rigidbody.

he question of blendshape location has been answered by a forum user, please visit your original post for details.
https://forum.reallusion.com/407209/Export-blend-shapes-for-faces-in-Unity 


It’s not the same situation. I already have an animation controller with different states: idle, attacks, etc. Doesn’t matter which animation is played, all my characters have their mouthes open.
By cloud.ninja - 5 Years Ago
Sent!
By Miranda (RL) - 5 Years Ago
Hi everyone,

Thanks for your help in clarifying issues. Here is a temp solution for you now.

We found that some users who use motions without jaw bone value like Mixamo motions, character mouth will open like what you described.
There are two options we can think of at the moment.
  • If you don't need to control the mouth anymore --> delete the jaw bone (refer to this video)
  • If you will need to control the mouth --> manually change the jaw bone transform when playing those kind of motions
To make facial animation work properly, deleting jaw bone may not be a good option. Therefore, we wrote a "close_mouth" script, which you can download on the bottom of this post. This script rotates the jaw bone to make the result quite better when the animation was mapped differently. 

Please put the script under the script folder, 
https://forum.reallusion.com/uploads/images/388ae5ec-712a-4ea3-9645-c719.png

Check the box to close mouth.

If you want to animating mouth, you can deactivate the "close_mouth"script to back to the original status. 
https://forum.reallusion.com/uploads/images/6deb4199-ee1c-4056-9028-78bd.png


By Dan Miller - 5 Years Ago
Thank you for the mouth open fix through script. I am primarily working with Cinemachine in Unity and I use the Timeline preview most of the time rather than hitting the play button because it is a lot faster. Is it possible to modify the script to also close the mouth when hitting 'play the timeline'? I'm trying to make a movie with this workflow and always seeing the mouth open on playback is distracting but the other problem is I will be doing a lot of facial animation. The facial animation will function in the Timeline preview, without hitting the main Play button, but my preview will not be correct if the mouth is hanging open. Thanks.
By Ryan Hayle - 5 Years Ago
I was using cc3 and iclone/faceware when I got this open mouth issue. Would it not be better to have a script that could copy and fix the animations in Unity on a push of a button? It sounds like your script only forces the mouth closed, which doesn’t sound very helpful.
By cybermynd - 5 Years Ago
I have no idea if this is relevant. I run into this issue all the time when importing Daz characters to Unity and I always fix it by simply dragging the lower jaw hierarchy into the upper jaw. After that the mouth is closed during animation and it still responds properly to blendshape application such as expressions and visemes. This is all in service of creating content for a VR app called Flipside and I've done literally hundreds of characters this way.
I apologize if this is not relevant to the Daz / CC3 / Unity workflow but I thought I would mention it.
Cheers.
By Scyra - 5 Years Ago
Embedding the Current Pose (with character in T-Pose) now prevents this problem from occuring initially. Switching Animator Controllers without copying over the pose will bring the problem back.

I tried out your method (CC_Base_JawRoot being the lower jaw hierarchy) and it appeared to work just as you described. Maybe it will come in handy sometime. Thanks for sharing.
By deidrereaystudios - 4 Years Ago
Is this fixed??!? Seems somewhat silly how powerful iclone and cc3 is to still have this issue and no quick fix or update. Please let me know if anyone has found a good solution or if there is a finalized fix. Thank YOU!!
By Miranda (RL) - 4 Years Ago
Hello,

From version 3.1, CC has the ability to export mouth-open morph.
Please find details here >> https://forum.reallusion.com/FindPost420530.aspx

deidrereaystudios (1/6/2020)
Is this fixed??!? Seems somewhat silly how powerful iclone and cc3 is to still have this issue and no quick fix or update. Please let me know if anyone has found a good solution or if there is a finalized fix. Thank YOU!!


By adolfobolta - 4 Years Ago
I tried everything here and nothing works, The mouth close-script doesnt work, the mouth morph when exporting and neither the method (CC_Base_JawRoot being the lower jaw hierarchy. Mouth always open, No lip-sync whatsoever
By garrettg11 - 4 Years Ago
Hi, I also have this problem of the mouth opens and stays open when animating. It happens regardless of what kind of figure i export from CC3 to unity. And I have tried with and without ticking the mouth open morph field on the fbx export dialog. Which I am not sure I understand what that is supposed to do.

The figure was importing with a Mouth Open blendshape already, which opens the mouth if you dial the slider. After export with the mouth box ticked I end up with a new additional blendshape of 'Merged_Open_Mouth', which, yep, opens the mouth. But I need it to be closed... At runtime I can assign a negative value to the blendshape and dial in the mouth closed. Is that what we're supposed to do? So for ex the character I'm testing with, if I run my scene, which runs the characters animation controller idle animation, and in the IDE I dial in -40 for the mouth open blendshape to get it kind of where it should be. Then stop the scene and set the dial to -40. So that makes it look fugly in the ide/preview scene screen. But then running the scene once the animation kicks in the mouth sag is compensated.

And happens with any of the mechanim animation controllers and animations I have tried it with so far (limited though). Haven't gotten to the point of adding any facial animations into unity yet, still learning iclone on one side, and first things first on unity side been stuck in trying to get character textures to work correctly but noticed the mouth thing along the way.

I'm a noob to character animation and these work flows, so possibly there is some step I've not yet discovered. Is this the right way to fix this? Feels more like a workaround. Hopefully those with more experience can give us the answers or patch.

I'm also having a heck of a time getting textures to work out in unity. Maybe I am running into some bugs versus learning curve. Using unity 2019.1.14f1, (hdrp 5.16.1). 

By cybermynd - 4 Years Ago
This issue seems to be fixable. We have the same issue with Daz characters being imported into Unity. This solution may be specific to Unity but it definitely does work. This video references Flipside which is a VR game but you should be able to leave that out and the character should behave exactly the same. If you only want the mouth fix go to 1:35.

https://youtu.be/cd6hVahP2ks

Hope this helps.
By refuzee - 4 Years Ago
I don't think reordering the hierarchy solves the problem. It is not really applicable to the Unity Avatar (may work with an instance in the scene but not edit the character as such).

The script provided uses LateUpdate() which overwrites all previous animations and is also not sutable for addressing the jaw as animation target. This is a hotfix for those who don't need jaw animation but not a fix for the problem. The problem is that most likely the jaw is not animated within a recording and the default position is open.

Summing up, the previous proposals don't fix the problem, at least for me. Using Mouth (+Jaw) animations via blendshapes does only work for the mouth and not for the jaw if any of the previous solutions is applied. At least for me.
By cybermynd - 4 Years Ago
You are right, it doesn’t alter the character fbx.
By Miranda (RL) - 4 Years Ago
Hi everyone,

If the Export Mouth-Open Morph function doesn't work, may you send us the character file via Feedback Tracker?

To fix the mouth open issue, this workaround "might" satisfy your needs, please check it.

https://forum.reallusion.com/FindPost442628.aspx

Thanks!
By davidguldberg - 4 Years Ago
So i ran into this issue as well, and right this moment i found the solution. At least for this one character im working with (which is a daz 8 gen character)
Oh and im only having this open mouth issue when i convert my character to humanoid rig.
Select your character in the project folder where ever you got it stored. 
Click the 'Rig' tab
After converting to Humanoid, click the 'Configure' button.
In the window with the green prototype body, click 'Head'
In my case under Jaw, i had the transform 'lowerJaw' as selected. But that transform position is not where the jaw is.
So instead i slotted in 'Chin' wich in my scene view i could see and click as the place where the jaw is.
I have attached a screenshot.
Hope it helps someone out there.https://forum.reallusion.com/uploads/images/db8922f9-38c8-4dd3-b556-4fee.png
By Miranda (RL) - 4 Years Ago
Hi David,

May we know if the mouth open result is expected as the how it supposed to be after selecting Chin? 

davidguldberg (4/28/2020)
So i ran into this issue as well, and right this moment i found the solution. At least for this one character im working with (which is a daz 8 gen character)
Oh and im only having this open mouth issue when i convert my character to humanoid rig.
Select your character in the project folder where ever you got it stored. 
Click the 'Rig' tab
After converting to Humanoid, click the 'Configure' button.
In the window with the green prototype body, click 'Head'
In my case under Jaw, i had the transform 'lowerJaw' as selected. But that transform position is not where the jaw is.
So instead i slotted in 'Chin' wich in my scene view i could see and click as the place where the jaw is.
I have attached a screenshot.
Hope it helps someone out there.https://forum.reallusion.com/uploads/images/db8922f9-38c8-4dd3-b556-4fee.png


By mail_35 - 4 Years Ago
Miranda (RL) (4/12/2019)
Hi everyone,

Thanks for your help in clarifying issues. Here is a temp solution for you now.

We found that some users who use motions without jaw bone value like Mixamo motions, character mouth will open like what you described.
There are two options we can think of at the moment.
  • If you don't need to control the mouth anymore --> delete the jaw bone (refer to this video)
  • If you will need to control the mouth --> manually change the jaw bone transform when playing those kind of motions
To make facial animation work properly, deleting jaw bone may not be a good option. Therefore, we wrote a "close_mouth" script, which you can download on the bottom of this post. This script rotates the jaw bone to make the result quite better when the animation was mapped differently. 

Please put the script under the script folder, 
https://forum.reallusion.com/uploads/images/388ae5ec-712a-4ea3-9645-c719.png

Check the box to close mouth.

If you want to animating mouth, you can deactivate the "close_mouth"script to back to the original status. 
https://forum.reallusion.com/uploads/images/6deb4199-ee1c-4056-9028-78bd.png



Thank you, the script works.
By fabricadegame - 4 Years Ago
For me, this problem was "fixed" by disabling automatic processing, keeping the window open for this, and only by adding none to the mandible.
By deidrereaystudios - 4 Years Ago
Problem i see with that is now you have no jaw bone.. So how would one ever get animations to work correctly without the jaw bone..??
By thevandal421 - 4 Years Ago
@Cybermynd Thank you for that video. I did it right after importing before doing anything else and it worked like a charm.
By grps.inc - 3 Years Ago
This happens and is confirmed in unity 2019 as well. Still don’t have a solution🙄 character imports but after hitting play the mouth is open
By cognos - 3 Years Ago
Just remove the jaw bone assignment in the head section of the avatar configuration.
You don't need this assignment, because usually the mouth is directly controlled by other subsystems, e.g. systems for lipsync, emotions, etc., to which the bones are directly assigned.
These subsystems address the bones independently of the AnimatorController via script. To avoid oddities, these bones should not be addressed in the Animator at all. In my opinion, this also applies to fingers or toes, as these are also addressed by any subsystems that may be used, such as HandPoser, FingerIK, etc. 






By neko-amatsukami - 3 Years Ago
I just make a new animation clip on the head bone (you can select the lower_jaw bone) with just 1sec of timeline, and I set the rotation of x to -0.001 at start and end of the animation

put it in an animator controller, put it on you head bone, remeber to select your character avatar, and voila.

https://forum.reallusion.com/uploads/images/8b74be65-d8f2-4d9f-ab6f-d5c0.jpg

Anyway, if you know what you do, you can put in this one animation to make your character blinking and put it on you blendshape mesh too
By TheBigEd - 3 Years Ago
https://forum.reallusion.com/uploads/images/f4224ffb-4931-4a56-a721-cd7c.png
I know this is late to the party, but hopefully it will be helpful. I was able to fix the problem by selecting the avatar in the Project window, going to "Rig" then "Configure..."  In the "Mapping" UI there, click on "Head", then setting "Jaw" to "None"
By praxis_labs - 3 Years Ago
neko-amatsukami   can you share a bit, on how were you able to access the bones and key frame them in Unity. I was not able to do that with my character's bones. Thanks for your solution 
By neko-amatsukami - 3 Years Ago
@iuliiii You can simply creat a new animation, and animator for this...

Place your animation in your animator, and the animator on any part of your character... ( pref on the head) and open the animation windows, so you can see every bones on your character, and play with.

Anyway. if you want a little thing not really complicated, use this script.

Name it " close_mouth.cs" and place it on your characters.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class close_mouth : MonoBehaviour
{  
    private Animator animator;
    private Vector3 eulerzangle;
    // Start is called before the first frame update
    void Start()
    {
         animator = GetComponent<Animator>();
        eulerzangle = animator.GetBoneTransform(HumanBodyBones.Jaw).transform.localEulerAngles;
        
        //euler = Quaternion.Euler(eulerzangle);
        Debug.Log(eulerzangle);
    }

    // Update is called once per frame
    void LateUpdate()
    {
        animator.GetBoneTransform(HumanBodyBones.Jaw).localRotation = Quaternion.Euler(eulerzangle);
    }
}


Sorry my english is not really good.


For more idea on the animator example, Take the free " Unity-chan " model package, and look how they make her blink