7.3 KiB
7.3 KiB
项目目标
我想做一个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