# 项目目标 我想做一个Maya的Metahuman自定义的插件, 语言:基于Python Maya版本:2022, 2023, 2024, 2025 ## 项目描述 本项目是一个Maya插件,主要功能是提供与MetaHuman相同拓扑的模型或者自定义的3d模型以来完成自定义绑定,编辑DNA,校准骨骼位置,保存DNA,载入DNA,导出fbx,保存DNA文件, 编辑BlendShape,等功能。 ## 这个插件主要功能 提供与MetaHuman相同拓扑的模型或者自定义的3d模型以来完成自定义绑定,编辑DNA,校准骨骼位置,保存DNA,载入DNA,导出fbx,保存DNA文件, 编辑BlendShape,等功能。 ## 注意Reference路径不参与参见功能实现,只作为参考。Reference只作为参考,可以从中拷贝必要的文件到当前项目中 ## 参考代码 参考指向: DNA_Calibration中主要参考DNA编辑等功能更,SuperRigigng主要参考UI样式并获取对应的功能的实现逻辑,MSLiveLink主要参开DNA编辑和文件处理方式。 MSLiveLink : Reference\MSLiveLink DNA_Calibration : Reference\DNA_Calibration DNA_Calibration 说明文档:Reference\DNA_Calibration\docs SuperRigging: Reference\SuperRigging ## 代码基本结构 以"\"结尾的行为文件夹 ```. ├── assets\ │ ├── dna\ DNA文件路径 │ ├── img\ DNA图标路径 │ ├── maya\ Maya资源文件路径 │ ├── MH.2\ MetaHuman 2.0文件路径 │ ├── MH.4\ MetaHuman 4.0文件路径 ├── icons\ 插件图标路径 ├── plugins\ │ └── Linux\ │ │ ├── 2022\ │ │ ├── 2023\ │ │ ├── 2024\ │ │ ├── 2025\ │ │ ├── pydna\ │ │ │ ├── python3 │ │ │ ├── python311 │ │ │ ├── python397 │ │ │ ├── python3108 │ └── Windows\ │ │ ├── 2022\ │ │ ├── 2023\ │ │ ├── 2024\ │ │ ├── 2025\ │ │ ├── pydna\ │ │ │ ├── python3\ │ │ │ ├── python311\ │ │ │ ├── python397\ │ │ │ ├── python3108\ ├── Reference\ 参考模块(不引用,仅供参考) │ ├── DNA_Calibration 参考模块:DNA_Calibration │ ├── MSLiveLink 参考模块:MSLiveLink │ ├── SuperRiggingEditor 参考模块:SuperRiggingEditor ├── resources\ │ ├── assets\ │ │ ├── YAxisUp\ │ │ │ ├── full_rig.mb Y轴向上全身绑定Maya基础文件 │ │ │ ├── sub_ctrl.mb Y轴向上次级控制器Maya基础文件 │ │ ├── ZAxisUp\ │ │ │ ├── full_rig.mb Z轴向上全身绑定Maya基础文件 │ │ │ ├── sub_ctrl.mb Z轴向上次级控制器Maya基础文件 │ ├── dna\ │ │ ├── NDA文件... │ ├── icons\ │ │ ├── NDA图标... │ ├── data\ │ │ ├── MetaHuman\ │ │ │ ├── Deploy.dna 部署dna │ │ │ ├── JointsInfo.json 骨骼基础信息 │ │ │ ├── VertexsInfo.json 顶点基础信息 │ │ ├── ARKit.json ARKit基础信息 │ │ ├── BodyJoints.json 身体骨骼基础信息 │ │ ├── JointsInfluence.json 骨骼影响基础信息 │ │ ├── Topology.json 拓扑基础信息 │ ├── maps\ 贴图路径(DDS) │ ├── mask\ Mask贴图路径(TGA) │ ├── meta_anim\ │ │ ├── meta_body_anim.py MetaHuman Body Animation │ │ ├── meta_face_anim.py MetaHuman Face Animation │ ├── meta_body_ctrl\ │ │ ├── meta_body_ctrl.py MetaHuman Body Control │ ├── meta_motion_apply\ │ │ ├── match_files\ │ │ │ ├── metahuman_match_file.txt MetaHuman Motion 资源依赖文件 │ │ │ ├── meta_motion_apply.py MetaHuman Motion 应用 │ ├── shaders\ │ │ ├── dx11_shd_body.fx DX11身体材质 │ │ ├── dx11_shd_eyeLeft.fx DX11左眼球材质 │ │ ├── dx11_shd_eyeRight.fx DX11右眼球材质 │ │ ├── dx11_shd_head.fx DX11头材质 │ │ ├── dx11_shd_teeth.fx DX11牙齿材质 │ ├── skinCluster\ │ │ ├── CTRL_Root_Face.skin Skin Cluster │ ├── additional_assemble_script.py 附加组装脚本 │ ├── analog_gui.ma 模拟图形用户界面MA文件 │ ├── gui.ma Maya GUI文件 │ ├── vtx_color.py 顶点色配置 ├── scripts\ │ ├── builder\ │ │ ├── maya\ │ │ │ ├── __init__.py │ │ │ ├── mesh.py │ │ │ ├── skin_weights.py │ │ │ ├── util.py │ │ ├── __init__.py │ │ ├── builder.py │ │ ├── config.py │ │ ├── joint.py │ │ ├── mesh.py │ │ ├── rig_builder.py │ ├── dnacalib\ │ │ ├── CMakeModulesExtra\ │ │ ├── DNACalib\ │ │ ├── PyDNA\ │ │ ├── PyDNACalib\ │ │ ├── SPyUS\ │ │ ├── CMakeLists.txt │ ├── dnalib\ │ │ ├── __init__.py │ │ ├── behavior.py │ │ ├── definition.py │ │ ├── descriptor.py │ │ ├── dnalib.py │ │ ├── geometry.py │ │ ├── layer.py │ ├── ui\ │ │ ├── __init__.py │ │ ├── style.qss UI样式文件 │ │ ├── menu.py 菜单UI模块 │ │ ├── toolshelf.py 工具栏UI模块 │ │ ├── mesh.py 模型UI模块 │ │ ├── rigging.py 绑定UI模块 │ │ ├── adjust.py 调整UI模块 │ │ ├── define.py 定义UI模块 │ ├── utils\ 功能模块路径 │ │ ├── __init__.py │ │ ├── ... 功能模块 │ ├── MetaFusion.py 插件启动框架 ├── config.py 配置文件 ├── Install.mel 拖入maya安装文件 ├── Install.py 安装执行文件 ├── CleanPycache.bat 清除pycache文件(不修改) # 参考这些文件,并基于目前的项目文件来完善项目: DNA Calibration Document : https://epicgames.github.io/MetaHuman-DNA-Calibration/index.html MetaHuman-DNA-Calibration 代码:https://github.com/EpicGames/MetaHuman-DNA-Calibration