Morphs Section version 1.3

  • Add Face Drivers. For Genesis and Genesis 2 characters.
  • Update Morphs Paths. Traverse the file system to find all available facial morphs. When the file paths have been updated, several new buttons become visible.
    • Show Units. Display a list of available face units morphs, which can be selected or deselected for loading.
    • Load Face Units. Load all selected face units morphs.
    • Show Expressions. Display a list of available expression morphs, which can be selected or deselected for loading.
    • Load Expressions. Load all selected expression morphs.
    • Show Visemes. Display a list of available viseme morphs, which can be selected or deselected for loading.
    • Load Visemes. Load all selected viseme morphs.
    • Show Correctives. Display a list of available joint corrective morphs (JCM's), which can be selected or deselected for loading.
    • Load Correctives. Load all selected joint corrective morphs (JCM's).
  • Import Morph(s). Import the selected morph files to the active mesh, or the morphs from all files in the directory. The morphs must have the same number of vertices as the active mesh. Optionally, object properties that drive the morphs can be created, and can be accessed from the Custom Morphs panel.
  • Import Driven Pose(s). Import the selected pose files to the active rig, or the poses from all files in the directory. Object properties that drive the morphs can be created, and can be accessed from the Custom Poses panel.
  • Transfer Correctives. Transfer all joint corrective morphs (JCM's) from the active mesh to all selected meshes.
  • Transfer Expressions. Transfer all facial expression morphs from the active mesh to all selected meshes. Only for Genesis and Genesis 2 characters.
  • Transfer Other Shapekeys. Transfer all shapekeys that are neither corrective morphs nor facial expressions from the active mesh to all selected meshes. 

Facial Expressions

Facial expressions are divided into three types: face units, proper expressions, and visemes. They all behave in the same way. For definiteness we just describe the expressions.

If we select Show Expressions a list of available morphs is displayed. The list depends on which morphs for this character that was found on your computer.

By default all available morphs are selected. The morphs can be selected and deselected individually, or all at once by pressing the Select All and Deselect All buttons.

Once the selection is made, turn off Show Expressions to hide the list, and press Load Expressions. After the selected morphs have been loaded, a new panel called Expressions opens up at the bottom.


  • Key: Insert keys for all expressions at the current frame.
  • Crossed key: Remove keys from all expressions at the current frame.
  • Clear: Clear all expressions.
For each loaded expression, we have a slider and a pin button, which sets the slider to 1.0 while also resetting all other sliders in the Expressions panel to 0.0.


Maria is afraid and angry, respectively.


As mentioned above, face units, proper expressions, and visemes behave identically. After all three types have morphs have been loaded, the panels may look like this.


If we added extra face bones in the Corrections section, we can tweak the expression with the free face bones on bone layer 8. In the left picture, Maria's face was posed to expressions (Concentrate 43% and Happy 71%). To the right, the expression was modified (not improved, I know) with the face bones.

Correctives

The deformation of DAZ characters is improved with corrective shapekeys, known as Joint Corrective Morphs (JCM's) in DAZ Studio. In the DAZ Importer, they are simply referred to as correctives. The load interface is identical to facial expressions.

Enable Show Corrections to display a list of corrective morphs for the active character, and select those that you want to load; often all correctives are selected. The close the list by disabling Show Correctives, and press Load Correctives. The selected correctives are loaded. In the mesh context, a large number of shapekeys appears. The purple fields indicate that the values are driven by bone rotations. Since Maria's toes were merge before, she has no big toe and the big toe shapekeys have no drivers.

Here is the deformation of the mesh, without and with corretives. The hair and sports bra have been hidden.

Transfer correctives

The correctives were loaded to the character mesh, but the clothes have no shapekeys. When we unhide the sports bra, we see that there is a problem.

We clearly need to transfer the correctives to the clothes. This can be done in two ways:
  • The target mesh may have a file with the same name as the shapekey.
  • The shapekey may be transferred automatically.
With the sports bra selected and the main character mesh active, press Transfer Correctives.


A file selector appears. The file path is automatically set to a location where morph files for the selected clothes mesh should be found.
  • Clothes Type: Don't attempt to transfer shapekeys only involving body parts far away from the clothing. Only available for transfer of correctives, not facial expressions or other morphs.
  • Transfer Method:
    • Auto: Only use automatic morph transfer, never import morph files
    • Files: Only import morph files, never use automatic transfer
    • Both: Import a morph file if one is found, otherwise use automatic transfer (default).
  • File Search Method: Only visible if the transfer method is Files or Both.
    •  Auto: Search for target morph files automatically. This is the only viable option if morphs are transferred to multiple meshes at once (default).
    • Current: Search for target morph files in the current directory only.
    • Subdirs: Search for target morph files in the current directory and in subdirectories, recursively.
  • Use Driver:  Also transfer shapekey driver together.
  • Use Active Shapekey Only: Only transfer the active shapekey. If disabled, all shapekeys of the right type are transferred.
Since the sports bra will never be affected by correctives for fingers, forearms, or the lower body, we set the clothes type to Sleeveless Shirt, and leave the remaining options at their default values. Finally, we press the Transfer Correctives button.

In the terminal window we can follow how the morphs are transferred. The character in front of the shapekey name means:
+   The morph was auto-transferred and non-trivial
-    The morph was auto-transferred but found to be trivial, and therefore discarded.
*   The morph was imported from a .dsf file.
0   The morph was skipped because it does not affect the selected clothes type.


The shapekeys and drivers are now transferred to the sports bra, and when Maria moves the bra moves along. Next we transfer correctives to the shorts, stockings and shoes, too.


The clothes type was set to
  • Shorts for the shorts
  • Boots for the stockings
  • Shoes for the shoes
It is important that the clothes type is set to something which includes all interesting morphs. If morphs have not been transferred, it is probably because we forgot to update the clothes type between meshes.

Transfer Expressions

In Genesis 3 and 8, facial expressions are implemented as poses of the face bones, and facial expressions automatically carry over to clothes once rigs have been merged. In the older Genesis and Genesis 2 characters, however, facial expressions are shapekeys. The Transfer Expressions transfer them to clothes meshes.
To illustrate this button, we import another character, which is a superhero with a superhero mask.  We load and manipulate facial expressions in the same way as before. However, because our superhero is a Genesis 2 character, the facial morphs are implemented as shapekeys.


The superhero mask does not have the shapekeys, so they must be transferred.
With the mask selected and the human active, press Transfer Expressions. The facial shapekeys and drivers are transferred to the mask.
It may be necessary to tweak the morphs a little.

Custom morphs

Not all morphs are facial expressions or correctives. To import some other type of morph to the active mesh, press the Import Morph(s) button.
A file selector opens, with the file path set to a directory where morphs for this mesh should be located. The options are:
  • Load All: Load all morph files in the current directory, consistent with the Include and Exclude fields below.
  • Include: Only import files whose name includes this string.
  • Exclude: Don't import files whose name includes this string.
  • Use Drivers: Create drivers for the loaded morphs.
  • Category: Name of the category to which this morph(s) belongs.
  • First Word Category: Sort the loaded morphs into different categories based on the first word in their file names.

Navigate to the directory where the full body morphs are located. We want to import the four files starting with FBM, but not the one starting with CTRL. Therefore, we enable Load All, set Include to FBM and leave Exclude empty. Alternatively, we could have left Include empty and set Exclude to CTRL. We also choose Category to be Body, and leave the remaining options at their default values. Finally we press Import Morph(s) to load the morphs.

A new panel called Custom Morphs opens up. At the bottom the category Body contains the four loaded morphs, corresponding to the four driven shapekeys. Each categories contain sliders for the morphs that belong to it, and a pin button to set this slider to 1.0 and all others to 0.0. The sliders in each category can be hidden by unselecting the corresponding checkbox.

The options at the top are
  • Prettify Panel:
  • Key: Insert keys for all expressions at the current frame.
  • Crossed key: Remove keys from all expressions at the current frame.
  • Clear: Clear all expressions.
  • Open All Categories:
  • Close All Categories:

Turn up to FBMPearFigure to 1.0. Maria grows fat, but she has not bought bigger sized clothes to match.

Select the four clothes meshes (sports bra, shorts, stockings and shoes), and then shift-select Maria to make her active. Press Transfer Other Shapekeys. Since we don't expect these morphs to affect the hair very much, the hair is not selected.
In the transfer options, it is important that the file search method is set to Auto when we transfer shapekeys to multiple meshes at once. The current directory only contains morphs to the first piece of clothing, so files for the other meshes will not be found with other settings.

The progress can be followed in the terminal window. We see that custom morph files were found for the sports bra and shorts (* in front of the morph name) and that the morphs were auto-transferred for the other two meshes (+ in front of the morph name).


And now Maria has upgraded her clothes to fit her new body shape.

Driven Poses

Morphs in DAZ Studio correspond to either shapekeys or poses in Blender (or possibly a combination of both). The Import Morph(s) button imports morphs that are shapekeys, whereas the Import Driven Pose(s) button import morphs that are poses.

To import a pose morph, select the rig and press Import Driven Pose(s). A file selector opens.

There are three import modes:
  • Single: Import the selected file. The file names for driven poses typically start with pCTRL.
  • Body: Import all files in the current directory that contain driven poses involving specified body parts.
  • All: Import all files in the current directory that contain driven poses.
In the Single mode, there is one addition import option:
  • Category: Sort the driving slider into this category.
We select the Single mode, set the Category to Poses (the default), select a file and press the import button.

A new panel labelled Custom Poses appears at the bottom of the tab, and a slider for ArmsUpLeft is added in the Poses category. When we set the slider to 1.0 the arm raises, because the rotation of the green bones are driven by this slider.

The driven bones turn green because a dummy constraint is added to the pose bones. The purpose of this mute constraint is to provide a link from the pose bone to the rig object.

In the Body import mode,we can choose between three body parts:
  • Hands: Import files that contain hand poses, i.e. file names that begin with pJCM plus one of Hand, Thumb, Index, Mid, Ring, or Pinky.
  • Feet: Import files that contain foot poses, i.e. file names that begin with pJCM plus one of Foot, Toes, BigToe, IndexToe, MidToe, RingToe, or PinkyToe.
  • Torso: Import files that contain other poses, i.e. file names that begin with pJCM but is not a hand or foot pose.
We select Body and Hands, and double-click on any file to import all hand poses.
Two new categories, Left Hand and Right Hand, are created, and sliders for the hand poses are sorted under these. To make a fist, set both the lFingersFist and lThumbFist sliders to 1.0.

Only files that contain poses directly are imported, not files that drives sliders that drive poses, because that causes update problems in Blender. An example of such a two-step driver is found in the file pJCMHandsFist. It defines a slider that drives the values of the lFingersFist and lThumbFist sliders, which in turn drive the hand bones to make a fist. This file is hence ignored by the pose importer.

In the All import mode, there are three options:
  • Category: The name of the category in which the sliders are placed. Defaults to Poses.
  • Include: Only load files whose name contains this string. Defaults to pCTRL.
  • Exclude: Never load files whose name contains this string. Defaults to "".
If we set both Category and Include to Waist, the three files above will be imported.
We can now pose the spine using the sliders in the Custom Poses panel. The driven bones turn green.

After driven poses have been imported, the bone rotation channels are driven and can not be posed freely. To fix that, we can go back to the Corrections section and press Make All Bones Posable again. The driven bones disappear from the active bone layer.
The driven bone have been moved to bone layer 32, and new bones are added to layer 9. The new bones are freely posable on top of the driven poses.