5.0 KiB
5.0 KiB
Maya插件开发计划
1. 项目目标与功能梳理
- 支持MetaHuman同拓扑或自定义3D模型的绑定、DNA编辑、骨骼校准、DNA保存/加载、FBX导出、BlendShape编辑等。
- 兼容Maya 2022-2025,Python 3.10-3.12,UTF-8编码。
- UI采用Qt(参考
scripts/Qt.py
),样式统一在scripts/ui/style.qss
。 - 参考Epic官方MetaHuman DNA Calibration工具及相关文档,吸收SuperRigging等插件的设计思路。
2. 主要模块划分
- 配置与主控
config.py
(配置文件)scripts/Main.py
(主入口)scripts/ReloadModules.py
(模块热重载)
- UI层
scripts/ui/
(所有UI模块,含主界面、子工具面板)scripts/ui/Qt.py
(Qt封装)scripts/ui/style.qss
(统一样式)scripts/ui/ui_utils.py
(UI通用功能模块)scripts/ui/geometry.py
(几何体UI模块)scripts/ui/rigging.py
(绑定UI模块)scripts/ui/behaviour.py
(行为面板UI模块)scripts/ui/definition.py
(定义面板UI模块)
- 功能实现
scripts/utils/utils_geometry.py
(几何体功能模块)scripts/utils/utils_rigging.py
(绑定功能模块)scripts/utils/utils_behaviour.py
(行为面板功能模块)scripts/utils/utils_definition.py
(定义面板功能模块)- DNA文件处理(加载/保存/编辑)
- 绑定与骨骼校准
- BlendShape与控制器映射
- FBX导出
- 兼容MetaHuman DNA标准
- DNA处理核心
scripts/dnalib/
(DNA文件处理核心库)scripts/builder/
(构建系统,负责从DNA文件创建Maya场景)
3. 阶段性开发计划
第一阶段:基础框架与UI
- 搭建插件基础结构,主入口、配置加载
- 主界面UI搭建(参考UI图与.qss风格)
- 完善主界面各功能区分栏(模型、绑定、调整、定义)
- 优化
Main.py
,确保Tab加载各Panel,统一风格和注释 - 完善
geometry.py
(几何体UI模块) - 完善
rigging.py
(绑定UI模块) - 完善
behaviour.py
(行为面板UI模块) - 完善
definition.py
(定义面板UI模块)
- 优化
- UI微调与优化
- 统一按钮样式与图标
- 优化面板布局与响应式设计
- 完善多语言支持
- 增强UI与Maya交互的稳定性
- 优化UI性能,减少重绘和刷新操作
第二阶段:核心功能开发
- DNA文件读写与MetaHuman兼容
- 完善dnalib模块,实现DNA文件的读取与解析
- 实现DNA文件的保存与导出
- 确保与MetaHuman DNA标准兼容
- 绑定流程实现(支持MetaHuman与自定义模型)
- 实现MetaHuman同拓扑模型的自动绑定
- 支持自定义模型的绑定流程
- 实现骨骼映射与权重传递
- 骨骼校准与自动分组
- 实现骨骼自动分组算法
- 支持骨骼位置、旋转的微调与校准
- 实现关节轴向自动校正
- BlendShape与控制器映射
- 实现BlendShape的创建、编辑与管理
- 支持控制器与BlendShape的映射关系设置
- 实现表情范围调整与镜像功能
- FBX导出与DNA文件导出
- 实现模型与骨骼的FBX导出
- 支持DNA文件的导出与版本控制
- 确保导出文件与MetaHuman兼容
第三阶段:高级功能与优化
- 批量处理与自动化工具
- 多LOD支持与切换
- 配置与模板管理
- 插件性能与兼容性优化
第四阶段:文档与测试
- 全流程测试脚本
- 用户操作手册与开发文档完善
- 参考文档和代码持续同步
进度记录与后续安排
2025-05-06 更新
- 基础框架与UI阶段(第一阶段)已完成95%
- 完成了主要UI模块的创建和基本功能实现
- 优化了项目结构,明确了各模块的职责和接口
- 需要进行UI微调与优化,包括统一样式、完善交互等
- DNA处理核心模块已初步实现,需要进一步完善与测试
2025-04-30 更新
- 完成了基础框架与UI阶段的主要任务(第一阶段 90%)
- 优化了主窗口与各功能面板的UI结构,确保风格统一
- 创建了所有必要的面板类,包括:
- 几何体UI模块(geometry.py)
- 绑定UI模块(rigging.py)
- 行为面板UI模块(behaviour.py)
- 定义面板UI模块(definition.py)
下一步开发计划
-
完成UI微调与优化
- 统一按钮样式与图标
- 优化面板布局与响应式设计
- 完善多语言支持
- 增强UI与Maya交互的稳定性
-
开始DNA文件读写与MetaHuman兼容功能开发
- 完善dnalib模块,实现DNA文件的读取与解析
- 实现DNA文件的保存与导出
- 确保与MetaHuman DNA标准兼容
- 每完成一个功能模块,及时更新开发计划文档与进度百分比。
- 代码变更后,自动检查代码规范、插件完整性,并给出下一步开发建议。
如需调整开发优先级或补充特定功能,请随时告知!