Generate a fully rigged, animation-ready MetaHuman from a mesh with custom topology and pose with the From Custom Mesh tool. Use this workflow for custom sculpts, 3D scans, AI-generated meshes, and other sources that do not follow MetaHuman topology. The output is a fully rigged MetaHuman on standard MetaHuman topology that preserves your original mesh's proportions.
The From Custom Mesh tool is available from the Import tool category in MetaHuman Creator.
You get the best results from meshes that resemble human morphology in an A pose. Heavily stylized meshes or meshes with extreme proportions may not solve well. The result is always standard MetaHuman topology in the MetaHuman A pose. For more guidance, see the Workflow Tips section.
Using the Tool
When you first open the tool, the MetaHuman template mesh is already loaded in the viewport.
The overall flow for the tool is:
From the Content Browser, click +Add to import your meshes.
Choose an import mode: Full Character or Head and Body.
Load your mesh.
Click Auto Solve at the bottom of the panel.
Refine with keypoints and auto-solve again.
Manual solve as needed for unsatisfactory results.
Once you are satisfied with the fit you can move into other MetaHuman Creator tools for additional edits to define the look of your character and then proceed to the Assembly tool to build the final character in Unreal Engine. You can also use the Save Pose button to export a DNA asset.
Learn more about individual properties in the Tool Settings section of the page.
Auto-Solve
A solve is the process of fitting the MetaHuman mesh to the custom mesh. The tool includes an Auto Solve button to start the process.
For most humanoid meshes, auto-solve fits the MetaHuman mesh in a single step. Auto-solve frames the face, traces the facial features (creating a 2D View), and fits the MetaHuman mesh to your custom mesh.
Afterward, it runs a refine pass automatically.
If the results are not satisfactory, move to the manual workflow to create keypoint correspondence, trace facial features, and edit the resulting face curves.
Manual Solve
The manual workflow provides control over each step:
Trace Facial Features: Frame the head with the camera and click Trace Facial Features to generate landmark data. This prepares the mesh for face fitting and lets you edit and align the facial curves.
Create Keypoint Correspondence: When the custom mesh is in a pose far from the MetaHuman A pose, keypoints guide the solve. Create a MetaHuman keypoint, then match it to the corresponding point on the custom mesh. Use the keypoint presets or create your own. Keypoints are most often needed on fingers and toes, which are the hardest areas to solve.
Body Solve: Click to align and solve the body.
Align Head: If you have not run a body solve, click Align Head to adjust the head.
Head Solve: Click to solve the head. For a single-mesh workflow that includes the head, run a Body Solve first to align the head position.
If you are still not satisfied, trace the facial features again, edit the curves, or adjust the parameters in the Advanced Features tab and solve again. Advanced parameters apply only to the manual solve.
Save Pose Export
Save Pose saves the MetaHuman template mesh (MetaHuman topology) as a DNA file in the pose of your custom mesh, to a folder of your choice. This generates a DNA asset in the Content Browser. From there, you can export it to disk by right-clicking the asset and choosing Export DNA, or generate a skeletal mesh by right-clicking and choosing Generate Skeletal Mesh.
This is an intermediate DNA file. It contains the body and head of the MetaHuman combined on the body skeleton, but it does not contain the face rig. It serves only to get you the full-character MetaHuman topology in the custom pose you solved.
Because it is an intermediate file, it has loading constraints you should be aware of before you build a workflow around it.
This DNA file can only be loaded with the Pose Editor in the MetaHuman for Maya toolset. You cannot assemble a character from it using the Character Assembler, which expects a complete DCC export package from MetaHuman Creator.
Loaded in Maya through the Pose Editor, the file contains the combined body mesh (body and face together, non-triangulated), the body skeleton, skin weights (the mesh is skinned to the skeleton), and the body RBF poses.
The following are workflow examples for this file:
Clothing Transfer: Wrap your clothing to this mesh or transfer skin weights from the body mesh to your clothing meshes. After you assemble your MetaHuman in MetaHuman Creator, use DCC export to get the MetaHuman A-pose skeleton and mesh. With both states available, you can transfer the pose with the clothing and bring the clothing meshes into the MetaHuman A pose too.
Custom Topology in MetaHuman A Pose: Keep your existing topology while gaining the MetaHuman rig. Get your custom topology in the MetaHuman A pose and re-import the skeletal mesh in Unreal Engine to update your MetaHuman with your custom topology.
Texture Baking: With your MetaHuman mesh matching your original pose and shape, use your baking tool of choice to transfer textures onto the new MetaHuman. Import them into Unreal Engine and apply them to your materials, or use the texture and material override options directly in MetaHuman Creator.
Re-Import using From Template: Export your separated head and body meshes from your DCC as FBX, then use the Import > From Template tool in MetaHuman Creator to bring your asset back to the MetaHuman A pose for full advantage of the MetaHuman ecosystem. This workflow is helpful in fixing errors from the solve or in cases where you have done further general edits in a DCC.
Workflow Tips
The tool produces the best results when the custom mesh closely resembles human morphology and is in an A pose. Keep the following guidance in mind:
Stylized or Non-standard Proportions: The solver relies on a MetaHuman database built from realistic human morphology. Cartoon-like features, oversized heads, tiny bodies, sharp stylized geometry, or fantasy features (pointed ears, heavy brow ridges) solve with varying quality and diverge in areas of extreme proportion. Core body proportions (spine, limb ratios) typically produce acceptable results, but characters far outside average proportions can show volume loss or pinching during animation, particularly at the shoulders and hips.
Clothed Meshes: The solver fits MetaHuman topology to the input surface, so it treats clothing as the character surface. Tight-fitting garments (lycra, skin-tight suits, close armor) generally give plausible results. Loose clothing (robes, coats, baggy trousers) produces a MetaHuman fitted to the clothing silhouette rather than the underlying body. Avoid clothing details such as buckles, folds, and fabric layers.
Low-poly Meshes: You can create a MetaHuman from a low-poly representation. The result is topologically valid, but surface accuracy is limited and the Refine Vertices step has little useful geometry to project onto, so there are no fine surface details.
Scanned Data with Artifacts: The solver handles minor imperfections, but severe artifacts, like large holes, self-intersecting geometry, or stray vertices, destabilize the fit. The solver does not repair meshes or fill holes. Clean scan data in a DCC tool before importing: at minimum fill holes, remove isolated vertices, and ensure the mesh is a single connected component.
Tool Settings
The panels below control how your source mesh and the template mesh display, how you place keypoints, and how the solve and refinement behave.
The two import modes have the same adjustment settings.
Import Mesh Types
Choose an input mode based on your source mesh.
| Import Type | Description |
|---|---|
Full Character | Creates a MetaHuman from a single, combined custom mesh that represents the entire character. Use the Full Character slot for a complete combined head-and-body mesh. |
Head And Body | Creates a MetaHuman from individual mesh components: head, body, or both, each in its own slot. You can fit the head alone, the body alone, or the entire character. When you supply both, they are treated as a combined body, so the head and body parts must align closely in the neck seam area.Use the Head And Body slots for individual parts — the body source mesh goes in the Body Mesh slot and the head mesh goes in the Head Mesh slot. |
You can expect the following workflow for the imports.
Full Character
Load your combined custom mesh into the input slot. If it has a textured material, it loads by default and the face solve uses it to trace facial features. For most human characters and meshes close to the template, run auto-solve immediately.
If auto-solve misses areas (such as fingers), add keypoint correspondence between the custom mesh and the template mesh, then run auto-solve again. Each time you click Auto Solve the body and head are reset as a first step.
If auto-solve is still not enough, use the options in the Manual Solve Actions section to solve each step with custom values.
Head And Body
Load the head and body as separate meshes in their respective slots to solve a full character from the parts. The parts can come from two different meshes, but they must align in the neck seam area. Large differences between head and body proportions produce a poor neck seam; smaller gaps blend nicely, so align your meshes as closely as possible. Otherwise the process matches the full-character solve.
Head Only
Solves for the head, and aligns the custom mesh to the body of the MetaHuman template mesh. With the face fitted, edit the body with the parametric sliders or load a body preset.
Body Only
Solves for the body similar to the full-character solve. The template mesh aligns to your body mesh while the head stays in its default state. Afterward, go to other tools such as Head and Body to sculpt the face, or load a head preset.
Custom Mesh
The Custom Mesh settings control how your source mesh displays.
| Property | Description |
|---|---|
Matcap | Overrides the material of your source mesh with a Matcap material, which is not affected by environment lights. When enabled, you can adjust transparency and color of the mesh. You can enable the material when tracing facial curves to improve the results if the mesh doesn't contain a texture material. |
Mesh Opacity | Adjusts the opacity of your mesh so you can overlay your mesh and the MetaHuman template mesh. |
Mesh Color | Adjusts the color of your mesh or Matcap material for better visibility. |
Mesh Offset | X Y Z position offset of the source mesh. Use this to offset your mesh next to the MetaHuman template mesh for easier keypoint placement. The offset is a preview only, not an actual transformation, and does not affect the solve. The solve is always performed between the MetaHuman template mesh at the origin and the source mesh in its original position. |
MetaHuman Mesh
The MetaHuman Mesh settings control how the MetaHuman mesh displays. You can use these settings to help visualize the alignment of the template and source mesh.
| Property | Description |
|---|---|
Matcap | Overrides the material of the MetaHuman mesh. When enabled, you can adjust the transparency and color, apply on a guide texture, and the overlay of the meshes. |
Guides Texture | Assigns a texture of guided lines that labels the topology areas to the MetaHuman mesh. Combined with the opacity value, this provides an overview of how the MetaHuman topology fits over your custom mesh. |
Mesh Opacity | Adjusts the opacity of your mesh so you can overlay your mesh and the MetaHuman template mesh. |
Mesh Color | Adjusts the color of your mesh or Matcap material for better visibility. |
Overlay | Overlays options between the MetaHuman template mesh and source mesh. Includes the following options:
The overlay options work only when Matcap is on for both meshes. |
The following are examples for using the Matcap property. You can combine the two Matcap materials to inspect the fit.
Example 1
Enable both Matcap checkboxes.
On the custom mesh, set Matcap Opacity to 1.0 and the color to light blue R 1.0 G 1.0 B 0.0.
On the MetaHuman mesh, turn Guide Textures on and set the opacity to 0.5. Set the overlay to Overlay MetaHuman.
This shows the MetaHuman template topology on top of the source mesh.
Example 2
Turn on both Matcap checkboxes.
On the custom mesh, set Mesh Color to R 1.0 G 1.0 B 0.0
Set Mesh Opacity to 1.0.
On the MetaHuman mesh, set Mesh Color to R 1.0 G 1.0 B 0.0.
Turn Guide Textures off.
Set opacity to 0.5, use a white color, and set the overlay to Overlay MetaHuman.
This reveals the areas of the template mesh that did not fit the source mesh properly. Adjust the colors for greater contrast.
Keypoints
The Keypoints settings control the visibility and preview of keypoints.
| Property | Description |
|---|---|
Show Preset Key Points | Show the preset keypoints predefined on the MetaHuman template mesh. |
Show Custom Key Points | Show the keypoints you defined on the custom mesh. |
Key Points Scale | Adjust the scale of the keypoints to make them more or less visible against the mesh. |
Show Connection Lines | While creating keypoints, draw a line between the corresponding keypoint on your source mesh and the MetaHuman mesh so you can confirm the correspondence. |
Show MH Key Points | Show the keypoints you defined on the MetaHuman template mesh. |
Custom Key Points Color | Change the color of the keypoints on the custom mesh. |
MH Key Points Color | Change the color of the keypoints on the MetaHuman template mesh. |
Facial Tracking
These options control how the face tracking curves and points display in the 2D View.
Edit the face tracking curves in the 2D View. After you click Trace Facial Features, a 2D View - Facial Tracking tab becomes available next to the 3D View tab. Open it from that tab or from the small 2D View window in the bottom-right corner.
In the 2D View, adjust the curves using their points so the curves precisely follow the facial landmarks — the upper and lower lips, nasolabial folds, and upper and lower eyelids.
Ctrl + click on a curve adds a point and Alt + click on a point deletes it. Return to the 3D View using the 3D View icon at the bottom or the shortcut icon at the top left.
| Property | Description |
|---|---|
Tracking Curves Color | Sets the display color of the face tracking curves. |
Tracking Points Color | Sets the display color of the face tracking points. |
Tracking Points Size | Sets the display size of the face tracking points. |
Manual Solve Actions
The Manual Solve Actions panel exposes per-step solve controls and the Advanced Features button.
Solve Body | Solves only the body as part of a manual process. |
Solve Head | Solves only the head as part of a manual process. |
Reset Body | Discards the current body solve result and rests the mesh to the MetaHuman default state. |
Reset Head | Discards the current head solve result and resets the mesh to the MetaHuman default state. |
Refine Vertices | Projects each MetaHuman template-mesh vertex to the closest point on the custom mesh surface for higher-precision detail. Auto-solve runs a refine pass automatically; this control applies it after a manual solve. You can edit its parameters in the Advanced Features tab under Refinement.The process is connected to the Refinement Delta head and body sliders that you can adjust. |
Save Pose | Exports the current pose of the source mesh to a DNA asset. |
Refinement Delta
The Refinement Delta settings control the Refine Vertices step, which is the final step in the fitting process. It performs a surface-to-surface projection, pushing each MetaHuman template-mesh vertex to the closest point on your custom mesh surface so the result captures fine contours and details. Auto-solve runs this pass automatically; the manual control lets you apply it after a manual solve.
Open the Advanced Features tab from the Manual Solve Actions panel and use the Refinement tab to adjust the values.
After refinement, the per-body and per-head delta sliders control how closely the template surface aligns to the custom mesh surface.
Advanced Features
The Advanced Features tab exposes the solve parameter groups. These parameters apply only to the manual solve.
| Property | Description |
|---|---|
| Advanced | |
Show Body Model Mesh | Previews the body model mesh, for debugging. |
Show Body Model A Pose | Previews the body model A pose, for debugging. |
Show MetaHuman A Pose | Previews the MetaHuman model A pose, for debugging. |
| Body Solve | |
|---|---|
Solve Pose | Determines whether to solve for body pose. |
Symmetrical Solve | Enforces left-right body symmetry during fitting. |
Iterations | Number of fitting passes. A higher value produces finer results but is slower. |
Icp Geometry Weight | Determines how strongly the surface tries to match the scan. A higher value produces a tighter fit to scan geometry. |
Icp Search Tolerance | Maximum distance (mm) to consider a scan point as a match. |
Icp Normal Compatibility | Reject scan points whose surface normal disagrees with the model normal. A lower value produces more permissive matching. |
Icp Key Point Weight | Determines how strongly detected body keypoints, like shoulders and hips, pull the rig into pose. |
Icp Landmarks Weight | Determines how strongly 2D landmark positions guide the fit. |
Regularization Global | Sets the resistance to overall shape change. A higher value stays closer to the base model shape. |
Regularization Local | Sets the resistance to local surface deformation. A higher value produces a smoother surface. |
Regularization Proportions | Sets the resistance to changing body proportions. A higher value preserves original proportions. |
Regularization Pose | Sets the resistance to changing joint angles. Higher values mean joint angles stay closer to detected pose. |
Curve Resampling | Number of points used to resample curve constraints. Higher values produce more accurate curve matching. |
| Face Solve | |
|---|---|
Face Iterations | Number of fitting passes for the face solve. More passes produce a finer result but are slower to process. |
Face Icp Weight | Determines how strongly the face surface tries to match the scan. A higher value produces finer results but is slower. |
Face Icp Search Tolerance | Maximum distance (mm) to consider a scan point as a match. |
Icp Normal Compatibility | Rejects scan points whose surface normal disagrees with the model normal for the face solve. Lower values equals more permissive matching. |
Face Keypoint Weight | Determines how strongly detected face keypoints, like corners and nose tip, pull the rig into pose for the face solve. |
Face Landmark 2DWeight | Determines how strongly 2D face landmark positions guide the face fit. |
Model Regularization | Regularization strength for the face patch blend model. Higher values produce less face deformation. |
Patch Smoothness | Smoothness penalty for face patch deformation. Higher values produce smoother face patches. |
| Neck Seam | |
|---|---|
Apply Neck Seam Smoothing | Enables neck seam smoothing. |
Seam Iterations | Determines the number of fitting passes for the neck seam. A higher value produces finer results but is a slower process. |
Seam Laplacian | Laplacian smoothness regularization on vertex offsets for neck seam vertex offsets. |
Seam Rings | The number of rings around the neck seam to apply smoothing over. |
| Refinement | |
|---|---|
Iterations | Number of iteration passes. A higher value produces finer results but is slower. |
Vertex Weight | Weight of the vertex position constraint relative to other constraints. |
Keypoint Weight | Determines how strongly detected keypoints, like shoulders, hips, nose and eye corners, pull the refinement. |
Landmark 2DWeight | Determines how strongly 2D landmark positions guide the refinement. |
Laplacian | Smoothness regularization on vertex offsets. |
Bending | Bending resistance for triangle mesh deformation. |
Strain | Strain regularization resisting stretching and compression. |
Vertex Offset Reg | Regularization penalizing the magnitude of per-vertex offsets. |
Vertex Regularization | Small regularization term on vertex variables for numerical stability. |
Distance Tolerance | Maximum distance (mm) to consider a scan point as a match. |