2025-02-05 22:39:45 +08:00
|
|
|
|
# 项目目标
|
|
|
|
|
|
|
|
|
|
我想做一个Maya的Metahuman自定义的插件,
|
|
|
|
|
|
|
|
|
|
语言:基于Python
|
|
|
|
|
|
|
|
|
|
Maya版本:2022, 2023, 2024, 2025
|
|
|
|
|
|
|
|
|
|
## 项目描述
|
|
|
|
|
|
|
|
|
|
本项目是一个Maya插件,主要功能是提供与MetaHuman相同拓扑的模型或者自定义的3d模型以来完成自定义绑定,编辑DNA,校准骨骼位置,保存DNA,载入DNA,导出fbx,保存DNA文件, 编辑BlendShape,等功能。
|
|
|
|
|
|
2025-02-05 23:03:56 +08:00
|
|
|
|
## 这个插件主要功能
|
2025-02-05 22:39:45 +08:00
|
|
|
|
|
|
|
|
|
提供与MetaHuman相同拓扑的模型或者自定义的3d模型以来完成自定义绑定,编辑DNA,校准骨骼位置,保存DNA,载入DNA,导出fbx,保存DNA文件, 编辑BlendShape,等功能。
|
|
|
|
|
|
|
|
|
|
## 注意Reference路径不参与参见功能实现,只作为参考。Reference只作为参考,可以从中拷贝必要的文件到当前项目中
|
|
|
|
|
|
2025-02-05 23:03:56 +08:00
|
|
|
|
## 参考代码
|
2025-02-05 22:39:45 +08:00
|
|
|
|
|
2025-02-08 19:36:32 +08:00
|
|
|
|
参考指向: DNA_Calibration中主要参考DNA编辑等功能更,SuperRigigng主要参考UI样式并获取对应的功能的实现逻辑,MSLiveLink主要参开DNA编辑和文件处理方式。
|
|
|
|
|
MSLiveLink : Reference\MSLiveLink
|
|
|
|
|
DNA_Calibration : Reference\DNA_Calibration
|
|
|
|
|
DNA_Calibration 说明文档:Reference\DNA_Calibration\docs
|
|
|
|
|
SuperRigging: Reference\SuperRigging
|
2025-02-05 22:39:45 +08:00
|
|
|
|
|
2025-02-05 23:03:56 +08:00
|
|
|
|
## 代码基本结构
|
2025-02-05 22:39:45 +08:00
|
|
|
|
|
2025-02-07 05:10:30 +08:00
|
|
|
|
以"\"结尾的行为文件夹
|
|
|
|
|
|
|
|
|
|
```.
|
2025-02-08 19:36:32 +08:00
|
|
|
|
├── assets\
|
|
|
|
|
│ ├── dna\ DNA文件路径
|
|
|
|
|
│ ├── img\ DNA图标路径
|
|
|
|
|
│ ├── maya\ Maya资源文件路径
|
|
|
|
|
│ ├── MH.2\ MetaHuman 2.0文件路径
|
|
|
|
|
│ ├── MH.4\ MetaHuman 4.0文件路径
|
|
|
|
|
├── icons\ 插件图标路径
|
2025-02-05 22:39:45 +08:00
|
|
|
|
├── 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\
|
2025-02-07 05:10:30 +08:00
|
|
|
|
│ ├── assets\
|
|
|
|
|
│ │ ├── YAxisUp\
|
|
|
|
|
│ │ │ ├── full_rig.mb Y轴向上全身绑定Maya基础文件
|
|
|
|
|
│ │ │ ├── sub_ctrl.mb Y轴向上次级控制器Maya基础文件
|
|
|
|
|
│ │ ├── ZAxisUp\
|
|
|
|
|
│ │ │ ├── full_rig.mb Z轴向上全身绑定Maya基础文件
|
|
|
|
|
│ │ │ ├── sub_ctrl.mb Z轴向上次级控制器Maya基础文件
|
2025-02-05 22:39:45 +08:00
|
|
|
|
│ ├── dna\
|
|
|
|
|
│ │ ├── NDA文件...
|
|
|
|
|
│ ├── icons\
|
|
|
|
|
│ │ ├── NDA图标...
|
2025-02-07 05:10:30 +08:00
|
|
|
|
│ ├── 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 顶点色配置
|
2025-02-05 22:39:45 +08:00
|
|
|
|
├── 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
|
2025-02-08 19:36:32 +08:00
|
|
|
|
│ ├── dnacalib\
|
|
|
|
|
│ │ ├── CMakeModulesExtra\
|
|
|
|
|
│ │ ├── DNACalib\
|
|
|
|
|
│ │ ├── PyDNA\
|
|
|
|
|
│ │ ├── PyDNACalib\
|
|
|
|
|
│ │ ├── SPyUS\
|
|
|
|
|
│ │ ├── CMakeLists.txt
|
2025-02-05 22:39:45 +08:00
|
|
|
|
│ ├── dnalib\
|
|
|
|
|
│ │ ├── __init__.py
|
|
|
|
|
│ │ ├── behavior.py
|
|
|
|
|
│ │ ├── definition.py
|
|
|
|
|
│ │ ├── descriptor.py
|
|
|
|
|
│ │ ├── dnalib.py
|
|
|
|
|
│ │ ├── geometry.py
|
|
|
|
|
│ │ ├── layer.py
|
|
|
|
|
│ ├── ui\
|
|
|
|
|
│ │ ├── __init__.py
|
2025-02-08 19:36:32 +08:00
|
|
|
|
│ │ ├── style.qss UI样式文件
|
2025-02-05 22:39:45 +08:00
|
|
|
|
│ │ ├── menu.py 菜单UI模块
|
|
|
|
|
│ │ ├── toolshelf.py 工具栏UI模块
|
2025-02-07 05:10:30 +08:00
|
|
|
|
│ │ ├── mesh.py 模型UI模块
|
2025-02-05 22:39:45 +08:00
|
|
|
|
│ │ ├── rigging.py 绑定UI模块
|
|
|
|
|
│ │ ├── adjust.py 调整UI模块
|
|
|
|
|
│ │ ├── define.py 定义UI模块
|
2025-02-08 19:36:32 +08:00
|
|
|
|
│ ├── utils\ 功能模块路径
|
2025-02-05 22:39:45 +08:00
|
|
|
|
│ │ ├── __init__.py
|
2025-02-07 05:10:30 +08:00
|
|
|
|
│ │ ├── ... 功能模块
|
2025-02-05 22:39:45 +08:00
|
|
|
|
│ ├── MetaFusion.py 插件启动框架
|
2025-02-08 19:36:32 +08:00
|
|
|
|
├── config.py 配置文件
|
2025-02-05 22:39:45 +08:00
|
|
|
|
├── Install.mel 拖入maya安装文件
|
|
|
|
|
├── Install.py 安装执行文件
|
2025-02-08 19:36:32 +08:00
|
|
|
|
├── CleanPycache.bat 清除pycache文件(不修改)
|
2025-02-07 05:10:30 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 参考这些文件,并基于目前的项目文件来完善项目:
|
|
|
|
|
|
|
|
|
|
DNA Calibration Document : https://epicgames.github.io/MetaHuman-DNA-Calibration/index.html
|
|
|
|
|
MetaHuman-DNA-Calibration 代码:https://github.com/EpicGames/MetaHuman-DNA-Calibration
|
2025-02-08 19:36:32 +08:00
|
|
|
|
|