docs: 初始化占位说明与契约依赖

This commit is contained in:
2026-09-14 19:02:38 +08:00
commit 20f27271a8
+45
View File
@@ -0,0 +1,45 @@
# opendance-windows
OpenDance Studio **阶段二**:Windows 客户端(Godot 4)。
> **状态:占位仓库**。按《DSH 开发文档:OpenDance Studio》的开发顺序
> (Web 服务端 → Windows 客户端 → Android 辅助 App),本仓库将在阶段一
> (`opendance-web`)契约冻结后开始开发。
## 计划技术栈
| 组件 | 选型 |
|---|---|
| 引擎 | Godot 4 (MIT) |
| VRM 加载 | godot-vrm (MIT) |
| 多格式导入 | Assimp (BSD-3-Clause) |
| 通信 | WebSocket + HttpClient |
| 评分 | DTW + 关节角度差异 |
## 计划任务
`T-WIN-001` 骨架 → `T-WIN-002` REST 客户端 → `T-WIN-003` WebSocket 接收 →
`T-WIN-004` 239 字节帧反序列化 → `T-WIN-005` VRM 加载 → `T-WIN-006` 骨骼重定向 →
`T-WIN-007` DTW 评分 → `T-WIN-008` 游戏 UI → `T-WIN-009` 来源信息展示 →
`T-WIN-010` 关于页 → `T-WIN-011` Windows 打包脚本
## 依赖的契约(已冻结于 opendance-web,v0.1.0)
- `contracts/websocket-keypoints.md` — **239 字节关键点帧**与文本控制消息(本端为接收方)
- `contracts/skeleton-topology.md` — MediaPipe 33 点拓扑、父节点表、9 个关节角特征
- `contracts/rest-api.yaml` — 曲目/动作/模型 API
- `contracts/data-models.md` — 资源字段与 **VRM 优先**的默认模型选取规则(§4.1)
- `contracts/model-formats.md` — 模型与动作格式、关键点序列结构
- `contracts/open-source-credits.md` — 关于页必须展示的开源声明(三端共用)
契约地址:https://gitea.kasugano.cn/zijunchiang/opendance-web/src/branch/main/contracts
**任何跨端契约变更必须先回到 `opendance-web` 修改 `contracts/` 并提升版本**,
再在本仓库创建适配任务。
## 关键约束
- 客户端消费的目录通过 `GET /api/catalog/export` 一次性拉取,仅含 `status = published` 的资源
- 默认模型直接用服务端解析好的 `defaultModelId`,本端无需自行实现优先级
- 不使用 SMPL 拓扑
- 发布产物必须包含 `THIRD_PARTY.md` 与「关于」页开源声明