第二章 程序总体介绍¶
MoMask AI动作生成系统是一个集成于Blender平台的插件系统,主要功能是将用户输入的自然语言文本转换为3D角色动画。系统采用客户端-服务器架构,通过RESTful API与后端MoMask模型服务进行通信,实现文本到动作的转换。
系统架构¶
系统采用分层架构设计,主要包括以下层次:
1. 用户界面层(UI Layer)¶
- 提供直观的Blender面板界面
- 支持服务器连接配置、模型选择
- 动作描述文本输入
- 角色模型选择和目标骨架指定
- 参数设置(帧数、IK开关等)
2. 业务逻辑层(Business Logic Layer)¶
- 网络通信模块:处理与后端服务的HTTP请求
- 动作重定向模块:实现源骨架到目标骨架的动作映射
- 骨骼映射模块:自动匹配不同骨架的骨骼对应关系
- 约束系统模块:使用Blender约束实现动作重定向
3. 数据处理层(Data Processing Layer)¶
- NPY到BVH格式转换
- BVH文件导入导出
- 角色模型热加载
- 动作数据烘焙
4. 基础设施层(Infrastructure Layer)¶
- 全局配置管理
- 国际化支持
- 日志和错误处理
核心功能流程¶
- 连接阶段:用户通过UI连接MoMask服务器,获取可用模型列表
- 配置阶段:选择目标角色模型和骨架,输入动作描述文本
- 生成阶段:发送文本到服务器,MoMask模型生成动作数据(NPY格式)
- 转换阶段:将NPY转换为BVH格式,导入Blender
- 重定向阶段:自动将动作重定向到目标骨架
- 烘焙阶段:烘焙约束为关键帧动画,完成动作应用
技术特点¶
- 智能骨骼映射:支持多种命名规范的骨架自动匹配
- 实时预览:可预览动作效果后再应用到目标角色
- 模块化设计:各功能模块独立,便于维护和扩展
- 错误处理:完善的异常捕获和用户提示机制