Global Settings
Global settings apply to every job in the queue. They are configured once in the settings panel at the top of the MHA Manager tab. Settings persist between sessions and are saved in the batch manifest. Most rows carry a revert arrow that puts them back to the default shown here.
Watches the project for new Footage Capture Data assets - takes delivered by Capture Manager - and queues them automatically. Takes already in the queue are never re-added. Takes ingested from Add Jobs -> External Footage are queued when the ingest finishes, whether or not this is on.
Starts the batch when auto-queued takes arrive and nothing is running. Takes arriving mid-batch are queued and started on the next idle trigger.
Content path prefix to restrict the watcher to, for example /Game/CaptureManager/Ingest.
Where the Wwise Authoring API lives, which container to enumerate when a Wwise enqueue names none, and which converted media the solve reads. See Wwise Audio.
Off, a job whose Performance asset already exists and contains solved animation skips straight to export instead of solving again — the right behaviour when re-running a batch after a partial failure. Turn it on to force the solve to run regardless. Identity Create and Stereo Calibration jobs are unaffected: they go straight to Done when their identity or calibration already exists.
Re-exports a job's AnimSequence on every run, even when Overwrite Existing Assets is off and one already exists. Only the AnimSequence — LevelSequence and Control Rig FBX still respect the overwrite setting.
Bakes the solved performance into a UAnimSequence asset. Turn it off for solve-only runs.
Overwrites assets at the output path if they already exist. Off, export is skipped for any asset that is already there, unless Always Export Animation overrides it.
Opens the exported AnimSequence in its asset editor when a job completes. Best for single-job runs; no effect headless.
Off, generated Performance and animation assets are saved next to the source Capture Data asset. On, everything is collected in the Content Browser folder below instead.
Places all generated assets directly in the UE export directory. Turn it off to give each take a subfolder named after its source Capture Data's folder. Affects newly created jobs only.
Targets the exported AnimSequence at the skeletal mesh of the job's MetaHuman Identity. Off, the Fallback Target Skeleton below is used instead. Queue-wide — there is no per-job override.
Skeleton or skeletal mesh used as the export target when Use MetaHuman ID Mesh is off.
Writes the job-appropriate FBX for Maya, Blender, and other DCC tools. One toggle, not two — the form is derived from the solve: body-tracking jobs get the baked-joint <name>_DCC.fbx, face jobs get the animator-editable Control Rig <name>_CR.fbx. See Exports.
Thins the Control Rig bake before FBX export. The bake writes one key per frame on every channel and Epic's own Control Rig FBX exporter has no key-reduction option, so dense bakes stay dense. This drops keys that do not meaningfully change the curve, refitting tangents to compensate.
Disk folder where the FBX files are written. Open Export Folder in the toolbar opens whatever it is currently set to.
Folder structure under the export directory: Per Take (a subfolder per source take), Actor / Part (<Actor>/Face or /Body), or Flat (everything in one folder).
Writes the take's audio beside the exported FBX as <AnimName>.wav, trimmed and timecode-aligned to the same range the FBX animation covers, so audio and animation line up at frame 0 in the DCC. Skipped when the take has no audio track.
Also bakes the animation into a ULevelSequence — framed, self-lit, and playable on its own. The face binding, lighting rig, and preview backdrop sit under it as their own rows; see Level Sequence Preview.
Lighting used in the MetaHuman Performance editor viewport: one of the MetaHuman lighting rigs Epic ships, a Custom Light Preset registered in MetaHuman Character, or the package path of a level from the custom folder below. Empty means Epic's own preview scene. No row in the settings panel - set it from the Lighting section of the View menu in the Performance editor viewport (see Expression Limits) and it is re-applied every time a Performance editor opens. Nothing is written into the Performance asset.
Puts the grooms of the MetaHuman on the preview face in the Performance editor viewport. The character is found from the face mesh the viewport already shows. No row in the settings panel - set it from the Hair toggle on the Expression Limits panel and it is re-applied every time a Performance editor opens. Nothing is written into the Performance asset.
Where you keep your own lighting levels. Every map under it, recursively, joins both lighting lists, alongside the Custom Light Presets registered in MetaHuman Character. A custom level follows the same convention Epic uses - the subject stands at the origin facing +Y with the head at (0, -1, 147). A LevelSequence export copies its lights, static meshes and post process volumes; the Performance viewport streams the level itself.
Runs the automatic depth-cleaning pass before every depth-footage solve: per-sequence depth range, per-frame noise cutoff, hole filling, temporal smoothing, and foreground isolation, all data-driven. Depth footage only — Mono and Audio jobs ignore it. Queue-wide, with no per-job override.
A newly ingested single-camera take that already carries depth sequences - a mobile device running Live Link Face, or any other depth camera - classifies as a depth-family job: Depth when a calibration is linked to the asset, Other when one still has to be found. Off classifies those takes as Mono, which ignores the depth and needs no Identity.
Global default USkeletalMesh for body-tracked jobs whose Body Export Skeleton is Existing Skeleton. A per-job Body Target Mesh takes priority.
Auto-registers a body export's target skeleton as compatible with the MetaHuman base skeleton, so face and body animation play back together without a manual compatibility step.
Content Browser folder where + Create Retargeter... saves new IK Retargeter assets, named RTG_SMPL_<MeshName> automatically.
Solve Defaults — per-category templates

New jobs inherit their starting solve options from one of three templates, chosen by the job's solve category: Mono, Depth Footage (stereo), or Audio. Set your preferred options once per category instead of per job. The Solve Defaults section in the settings panel shows a 3-way picker above an embedded job-settings panel — it is the same widget used for a queued job, editing the chosen template instead of a specific job.
A new job is seeded from the template matching its category at creation time. If a queued
job's category later changes (e.g. its Type changes from Mono to Stereo), its options are
re-seeded from the newly matching template — frame exclusions marked on the job are
preserved, everything else resets. Asset-picker fields you leave empty are pre-filled with
the engine's real defaults on startup, so the UI shows the actual asset that will be used;
your own choices are never overwritten. The Stereo and Audio templates default their Control
Rig Class to Face_ControlBoard_CtrlRig — the only rig whose control names line
up with MetaHuman's facial curve data.
Stereo Calibration settings
These settings control Stereo Calibration jobs queued from checkerboard takes. A bad calibration poisons the depth of every take built on it, so the two quality gates below sit upstream of processing.
Checkerboard dimensions measured in squares, not inner corners. The defaults match Epic's shipped calibration board (11 x 16 squares). With the board override off these are learned state — the auto-detect probe writes its winning dimensions back here to seed the next run.
Physical size of one board square. This cannot be measured from footage — a wrong value silently scales the stereo baseline and therefore all reconstructed depth. Measure your printed board. Only takes effect while Override Default Board is on.
Off, the plugin assumes Epic's shipped board and lets Board Pattern and Square Size auto-detect. On, your Board Pattern W/H and Square Size are pinned verbatim — the probe only tries them and their swapped orientation, and detection never writes back over them. Use this for a non-Epic board. You can save named boards as presets in this sub-section and switch between them.
Blurry frames are rejected during frame selection by a threshold the plugin tunes itself (5.0 px to start) and stores for the next locked-frame retry. Likewise, with the board override off the board pattern is probed across a handful of frames — your last winner, its transpose, an inner-corner misentry, Epic's board — before the full-take scan, and the winning dimensions are written back. Neither is an editable row; both appear in the manifest as learned state.
The primary quality gate. Calibration is ranked by out-of-sample validation RMS — error measured on frames it did not train on — because a solve's own training error overfits and hides a bad result. Above this value the job pauses as PoorCalibrationQuality.
A second, coarser gate on Epic's 0-1 diagnostics score, evaluated against the consuming take's own footage. It catches structurally broken calibrations (a wrong-route solve scores around 0.2) but cannot rank frame-set quality — a slightly worse calibration can score marginally higher. Leave it as a structural safety net; do not tighten it expecting finer quality discrimination. Below this value the job pauses.
Also writes an OpenCV-model calib.json into the take's footage folder on disk, in the format Capture Manager's stereo HMC ingest reads. An existing calib.json is never overwritten.