face rig for game animation

I’m working on a face animation rig for use with Unity. I’m building it to work with multiple face shapes (using shape keys) . It’s slow going, and I keep running into problems. Hopefully I can manage it with some help from the community :slight_smile:

I’ve also made a short video showing how the controlers for the “hold object” rig works.

Looks pretty good so far. I like the style of the characters. Did you make them?

Thank you! Yes I made them. I based the mesh on this setup. I’m currently reading “the art of movin points” to help me build the rig and shape keys.

Making some progress on the eyebrow controls. I mix 9 shapekeys together with the bone 3 bones in each eyebrow to get the eyebrow movement and wrinkles.

amazing good work

Pretty cool work. I currently been going through the same thing over the last year and this one building a cartoon rig, The face rig, squash and stretch and deformations have really tripped me up a bit as those are areas where the quality of most tutorials is really low. My rig is just for animation in Blender but I notice yours is intended for Unity.

How well do blend shapes(shape keys) work in Game Engines versus a bone rig? I found file sizes quickly start ballooning in Blender with the more shape keys you add.

Thanks! Not doing too much squash and stretch on this rig actually. The characters are mostly going to be used for close up dialogue and the emphasis will be on their reactions and emotions (as opposed to gags or physical humor)

The file sizes get to be quite big unfortunately. We had to write a custom script and add a bunch of extra bones to store shape key animation curves to get it working in Unity, but it’s not too complicated all things considered.

I made some more progress on the eyebrows. Mostly finished but might need some tweaking later on.

He looks a bit constipated in this test, but I need to exaggerate to test the range of motion properly.

Struggeling with getting the eye textures to animate in the viewport. Turns out texture offsets only animate in the renderer… Anyone know of a workaround for that?

You could replace it with geo and animate that instead.

So I’ve managed to put in place most of the controls now.

Which means I can soon start the arduous task of tweaking and balancing the shapekeys.

True. Might have to try geometry instead. Just worried it will be too slow :slight_smile:

It’s been a long week working on this, but I have a first pass of the setup finished.

I will have to redo the controls for the mouth and eyebrow positions because the spline IK constraint isn’t updating on the right frame (don’t know if that is some sort of bug or I’m doing it wrong).

I’m hoping I’ll be able to call it done after another week. Then I can start working on the model and materials properly. Animation is going to have to wait for a while unfortunately.

Looking pretty good! The IK update issue is probably due to a dependency cycle. The system console should tell you if that’s the case and where the cycle lies.

Thanks! Yup found it. Would I be right in assuming I need two rigs to fix this? One to attach the splines to and another to control the splines? Just attaching the spline lower in the hierarchy doesn’t seem to make a difference.

Unfortunately, I don’t know enough about rigging to say. Plus, I haven’t seen the rig.

After a lot of digging around I found that I can use the action constraint to do mostly the same thing I was trying to use splines for (a clamp to constraint that kept the eyebrows moving over the surface of the face). So now the rig is mostly working. Still some issues, but they are not so big that the animations can’t be looped like before.

I think the rig is in a usable state now. Could use more work to make it more robust, and I also need to put in place a couple of controllers so I can overide a few shapekeys for certain expressions. I would also like to simplify a few things. There are a whole bunch of controllers like you can see in the video below, and it would get confusing to use for anyone but me :slight_smile:

the setup would have been a whole lot simpler if the clamp to spline constraint had worked, but the action constraint workaround controlls in basically the same way, so I’ll keep it for now.

Didn’t make a lot of progress on the rig this week, except some adjustments and fixing controllers that were moving in the wrong context. Troubleshooting stuff basically.

But I modelled the costume a bit more and put on some basic textures. I also did a pass on the eye shapes.

Added the ability to hold props. Actually more complicated than it sounds to get all the animation possibilities that I wanted into this.

Another character with the same rig. We are going to have a lot of characters so they will be based on the same building blocks.

I’ve also made a short video showing how the controlers for the “hold object” rig works.