Rigging the Face

I will be rigging this week, ideally in a few days or less, so that I can have time for catch up with my environment set-up. A tool that will be implemented to ensure this process goes smoothly and quickly is Advanced Skeleton for the face and body. I will use quick auto rigging processes and using a cage for the body, to speed up the rigging and weight painting process.

Figure 1. Advanced Skeleton rig cage.
Figure 2. Adjusting rig cage controls for shape.

I have had certain issues with the Advanced Skeleton body auto build rig joints. I can import the biped joint skeleton and move the joints. However, when I pressed ‘build rig’, the chest and all of the surrounding head joints move down (see figure 3- image 1a and 1b). I have tried adjusting these many times by moving the rig joints pre-build to accommodate the new placement of the joins after the build. Restarting the rigging process does not work either.

Figure 3. joint skeleton moving issue.

As you can see in figure 3, in images no. 2a and 2b, I managed to get it to work by placing the joints higher than they should be. I had to bild the rig several times in order to find the correct position. Yet, there was still an issue with the rig placement, it wouldn’t let me place the chest joint too low or the neck joint too high. Meaning that both of these were out of place.

I was apprehensive about restarting from scratch to fix this issue, especially since I have already made so many time-consuming alterations in an attempt to fix this. Nevertheless, I restarted from scratch, by importing a biped rig and moving the joints in the correct positions. Thankfully, this time when I built the rig, the joints stayed in their proper positions. I was able to continue with the rigging process smoothly due to this being solved.

I applied delta mush and sliders to help with the skinning smoothness, which provided much need alterations automatically. The elbow joints now bend very cleanly and realistically. I contemplated adding sliders to the shoulders, since they did not look the best when bent, however, since my chosen tutorials did not include them in the shoulders, for safety’s sake, I left them out. I decided to fix the shoulder positions using the scapula control instead. The sliders produced excellent results, see figure 4.

Figure 4. elbow and knee rig sliders.

Rigging the Face

Again, I will be using the Advanced Skeleton auto rig function to quicken this process.

Face Rig Version 1

I have had some strange occurrences happen when applying the points to the facial features. It happened after I completed all of the eye lid line points. The red area that surrounds the eye should only have remained within the distinct eye lid area. However, it seemed as though once I added the rig placement points onto the eye area, a duplicate mesh had been created, completely coloured in red. A similar issue happened with the lips; the red area seemed to be off position from where the actual lips are. A duplicate mesh was created, coloured red. Additionally, there was an issue with the forehead. After plotting the correct points on the geometry for the forehead, the green area did not show as it should have. It extended further than the area I selected. Although, the selection and method were perfect.

Next, a big issue here occurred when I attempted to build the facial rig. Errors occurred when the build tried to rig the lips., preventing me from doing so. I attempted to rerig the lip lines, however I only received error messages: “Not a complete edge loop” or “no name matches the object”. I tried making a symmetrical rig and an asymmetrical rig, however, both had issues and could not be properly built. There should not have been any issues with the mesh symmetry. Since, I have check it thoroughly, manually and with advanced skeleton symmetry checks. After researching possible causes, I concluded that the mesh must be the problem. Therefore, after making a spare model reference file, I listed possible causes and fixed as many as I could. With resources such as the Advanced Skeleton ‘clean’ and ‘check’ mesh tools. Problems with the mesh included: lacking symmetry, necessary default transformation values, or even software preferences conflicting with the plugin. I deleted the old reference and remade the weights for the fixed model version, and essentially restarted the facial rigging from scratch. The body was mostly transferable, so that saved time. After all of these many restarts, I became quite proficient and quick in the rigging process by now. So, this final time, I managed to complete it quickly and finally finished the working rig in under a week.

Figure 5. plotting geometry rig points onto the face.

Reference for reattaching reference model and copying weights: Can I edit a mesh after rigging it without the edited parts screwing up the skeleton? : Maya (reddit.com)

There were a few tweaks I wanted to fix, or experiment with line placements to improve mesh movement. But it was mostly acceptable. See figure 6 for visual details.

Figure 6. Weight issue with eyes.

I take back the ‘the rig is acceptable’ statement. I have found many flaws other than the eyelids. For example in the lowest image in figure 6, part of the forehead moved when the eyes were moved. There were more than only this, it seems that I must spend more time fixing issues with the weight painting.

At this point I will refine the rigging, working out where the weight for each joint needs to go for the mesh to move smoothly. On some occasions there were joints with the same name and only different numbers, and so, I had no idea where those joints should go. I implemented an Advanced Skeleton demo rig to compare weights and apply the weight in the correct places. A certain area that I received the most trouble from involved the mouth sides, see video 1 below. I experimented with new rig point placement after some consideration and compared my rig to the demo rig continuously. After these alterations were complete, the rig seems better, however there are still problems with the mouth, see figure 7. The next step will include more manual strategies to fix the rig.

Figure 7. Issue with automatic mouth position.

There were issues with the eyebrows found see figures 8a and 8b. I initially fixed them by importing the mesh in again with a different position, then rerigging them into the rig system. Though at a later stage in the process I found that this was not the correct method. I nullified this step and added a blend shape instead.

See video 1 part 0-2.

At this point, I have completed the demo rig weight painting comparison and now I will be refining any areas that still do not look correct with weight painting. The rig is mostly complete, only the mouth caused sever issues. I may have moved the rig controls to the extreme in the video 1, however, the real movements will be more subtle based on need for lip sync positioning. I am intending to strive for clean and smooth movements of the skin, therefore, I have spent much of my time cleaning and repositioning the weight painting. Fixing the mouth will be essential for my progress towards better lip sync animations. I am not certain that a lip-sync animation could be applied with how the rig looks at the moment, using the Advanced Skeleton prebuilt phonemes, though it currently lacks too many essential mouth shape capabilities.

Next: Fixing the Mouth Rig with Blend Shapes

I intend to experiment with blend shapes in order to fix the corner of the mouth. I believe that this is the only place that will necessarily need fixing. I can test if applying expressions will work as well, since this should help me to save time by creating premade facial expression assets.

Unfortunately, I have not learned in class how to use blend shapes for advanced skeleton after a rig has already been made. However, as far as I have researched, it should be possible. It is also possible that I may end up causing problems for myself if I cause conflicts with the original rig. However, this is a necessary step in order for me to progress.

After some testing of the blend shapes with the Advanced Skeleton rig, I have found almost no problems. There was a piece of forehead geometry that moved when I applied mouth blend shapes. Though, this seems easily fixable.

Next, my plan includes creating each emotion expression and phoneme mouth shapes for this lip sync. This may take me some time; however, it will make the lip-syncing process easier. The other option would be to make mouth shapes such as lip purse or opening the lip sides, then creating custom mouth shape when I start animating, however, I would prefer the first method. Efficiently creating less work for myself later with better preparation now. I will implement my male voice actor’s recorded videos as a reference for this stage. See video 1 part 3.

Upon some consideration, and some failure to fix the rig’s problems with blend shapes, I have decided to continue working on the weight painting of the mouth to fix the issue. Especially considering that the advanced skeleton rig already has the phoneme driven keys in one of the controls attributes. This means that as long as I am able to fix the strange mouth movements, then phonemes should be already ready for me to use without needing additional mouth shapes.

The rigging has been fixed and complete by adjusting the influences around the mouth and by implementing a set driven key for the upper and lower lip sides so that they open properly. See the video below for the complete version. (including my set driven keys that fixed the mouth).

Video 1. All rigging videos.
Figure 9. Completed rig with face.

Phoneme Shape Preparation

I am not completely satisfied with the appearance of the prebuilt phonemes with the facial rig, I tested making a blend shape at this point, however, there are aspects that negate the need for me to make any more blend shapes. That is, for the purpose of lip sync phoneme. For example, with my blend shape, the jaw, teeth and tongue to not move, unless I include those in the blend shape also. This extra work that is unnecessary considering that I have already made set driven keys to fix the sides of the mouth. I should be able to work with the phonemes from Advanced Skeleton, with a few personalisation’s. Making the process very quick. One aspect I still want to add, for the sake of preparation, is emotional expressions through blend shapes. Namely, this would only include alterations on the base head mesh, not extras such as eyebrows or teeth. The rest I will add while animating.

Emotional Facial Expression Blend Shapes

Here are a few examples of how I posed the mouth and cheeks. When looking at these, please into consideration that these poses are the extremes versions, they can be toned down when appropriate.

Figure 11. Smiling and laughing blend shape.
Figure 12. Frown blend shape.
Figure 13. Crying blend shapes.
Figure 14. All mouth blend shapes.

I also added a blend shape for the eyebrows, to pull the mesh away from the head, if it is necessary. In addition to this, the tongue was required, since the tongue rig did not work.

I intend to reference the rig to offload the pressure on the machine I am use, for when I compose the character rig and environment together. The same can be done for the character model and environment. (The character model would of course come with the rig. I should check if the blend shapes also come through). The video below is a reference that I used to ensure I used the correct method.

Presentation of Work in Progress:

Next week we will have a work in progress presentation of our work so far. in accordance of this, I have created a Miro board.

Graham Presentation 1: 15_10_22, Online Whiteboard for Visual Collaboration (miro.com)

Leave a Comment