The addon uses several JSON mapping files stored in resources/metahuman/ to define
bone-to-bone relationships between the MetaHuman skeleton, the metarig, and the
control rig.
Mapping Files Overview
| File | Purpose | Key Fields |
|---|---|---|
metarig_to_source.json |
Maps metarig bones to source skeleton bones | metarig, source |
source_to_deform.json |
Maps source bones to deform bones | source, deform |
fk_to_source.json |
Maps FK control bones to source bones | source, control |
bone_to_vertex.json |
Maps bone endpoints to mesh vertex indices | part, metarig, vertex_index |
face_board_bones.json |
Ordered list of face board bone names | (string array) |
Template Loading API
All mapping files are loaded through the core/templates.py module:
| Function | Returns | Source File |
|---|---|---|
load_metarig_to_source_mappings(template_name) |
list[dict[str, str]] |
metarig_to_source.json |
load_source_to_deform_mappings(template_name) |
list[dict[str, str]] |
source_to_deform.json |
load_fk_to_source_mappings(template_name) |
list[dict[str, str]] |
fk_to_source.json |
load_bone_to_vertex_mappings(template_name) |
dict[str, list[dict]] |
bone_to_vertex.json |
load_face_board_bones(template_name) |
list[str] |
face_board_bones.json |
get_metarig_path(template_name) |
Path |
metarig.py |
get_template_dir(template_name) |
Path |
(directory) |
All functions take a template_name parameter (currently always "metahuman") that
resolves to a subdirectory under resources/.