Wiki

Clone wiki

import_daz / Setup / Morphs / Transfer Shapekeys

Transfer Shapekeys

So far we have added morphs to the character but not to her clothes. The Transfer Shapekeys tool transfers the body morphs to the clothes meshes.

First there is a warning, however. If you intend to create low-poly versions of the clothes, as described in the Low-poly Meshes section, you need to do so before transferring morphs to the clothes. The reason is that the Quick Low-poly tool only works on meshes without shapekeys.

transfer0.png

Select the clothes which you want to transfer the morphs to, and make Aiko's body the active mesh. Press Transfer Shapekeys.

transfer1.png

A pop-up dialog appear which let you select the morphs to transfer.At the top of the pop-up dialog there is an option which determines the transfer method. It can take on four different values:

  • Nearest Face: Transfer shapekeys from the nearest face on the source mesh. This usually works well to transfer shapekeys to clothes and is the default.
  • Body: Only transfer between the first vertices, until a vertex with changed location is encountered. This works for shapekeys on the body that do not involve the geograft, because the merged vertices have higher vertex number than the original ones. This method is very fast when it works.
  • Geograft: Transfer shapekeys to the nearest vertex of the target mesh. Note the difference to the Nearest Vertex method. There each target vertex is paired with a source vertex, here each source vertex is paired with a target vertex, and nothing is transferred to unpaired target vertices. Use this to transfer shapekeys from the geograft to the merged mesh. Performance is the same as for the Nearest Vertex Method.
  • Legacy: This transfer method uses the data transfer modifier, and was the only method before version 1.5.1. It is very slow but works well in general.

More information about which method to use in different circumstances can be found in the blog post Morph Transfer Progress. See also Morph Transfer Artifacts.

  • Transfer Drivers: Transfer both shapekeys and drivers.
  • Use Vendor Morphs: Use custom morphs provided by vendors if available, otherwise auto-transfer shapekeys.
  • Overwrite Existing Shapekeys:
  • Strength Multiplier: Add a strength multiplier to the drivers.
  • Selected Verts Only: Only transfer shapekeys of selected vertices.
  • Ignore Rigidity Groups: See https://diffeomorphic.blogspot.com/2019/02/loading-morphs-after-anatomy-has-been.html.
  • Body part: Only transfer morphs which affect specified body part.
    • All: Transfer all morphs.
    • Face: Transfer face morphs.
    • Body: Transfer body morphs.
    • Custom: Transfer custom morphs.

transfer2.png

The picture above illustrates how the body part affects which morphs are transferred. The body part can be specified by the Import Custom Morphs tool

transfer3.png

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 only vertices outside the clothing's bounding box are affected.

After the JCM's have been transferred to the top and skirt, the clothes no longer intersect with the body when Aiko bends forward.

Finally we use the Transfer Shapekeys tool to transfer the custom morphs that we imported above.

transfer4.png

When the morphs have been transferred, the clothes fit Aiko even as she has gained weight.

The Nearest Vertex and Geograft transfer methods compute a Numpy array with the distances between all vertex pairs, to determine which is the shortest. If both meshes are large, this array can be huge, and your computer may not have enough memory to allocate it. If this happens, you can revert to the old General method, which should always work. However, transfer to smaller meshes can still work, so only after the tool has tried to transfer the morphs to all selected meshes an error message appears with a list of failed meshes.

Updated