-
released this
2026-09-14 20:05:51 +08:00 | 35 commits to main since this release⚠️ 本版已废弃,请直接使用 v0.2.2
不要再按下面的分卷说明操作。 下面那套「先
cat合并 3 个分卷」的流程
是本项目早期受 Gitea 前置 IIS 上传上限所迫的临时方案,现已作废:
发布规则改为只上传单个完整包,不再提供任何.partN分卷。为什么不建议再用本版(
contracts/VERSION实测,取出包内快照比对):契约项 v0.1.0 包内 当前服务端 rest-api0.1.0 0.5.0 websocket-keypoints0.1.0 0.2.0 data-models0.1.0 0.7.0 skeleton-topology0.1.0 0.2.0 model-formats0.1.0 0.5.0 database0.1.0 0.4.0 契约差 4 个大版本:本版不认服务端 0.5.0 目录里的
scenes[](没有场景选择),
也没有 0.2.0 的连接保活 / 设备去重 / 状态机,「关于」页面同样不显示版本号。
也就是说:即使你成功合并并解压,跑起来也对不上当前服务端。本版的分卷资产保留(已核验:三个分卷的 sha256 与
SHA256SUMS.txt一致、
合并后unzip -t无错、包内OpenDance.exe的 PE 头为MZ、OpenDance.pck存在),
仅作历史存档,不再作为可用发布推荐。
OpenDance Studio — Windows 客户端 v0.1.0
阶段二交付物:Godot 4 客户端,接收 Android 辅助 App 的 33 点骨骼关键点,
驱动 VRM 角色并 DTW 实时评分。只接收关键点,不接收、不存储视频画面。关于附件(历史存档,已作废)
发布包 36.4 MB,超过本 Gitea 实例反向代理的单次上传上限(实测 20 MB 可通过、
30 MB 被拒),因此拆分为 3 个分卷。请先合并:cat opendance-windows-v0.1.0.zip.part* > opendance-windows-v0.1.0.zip sha256sum -c SHA256SUMS.txt合并结果的 sha256 为
87edb67242c0fcd596bbb79fb2484a6af1401813d33be3dbc61207fbd967f4e2(已验证一致)。治本做法是在反向代理上放开限制:
client_max_body_size 100m;(Gitea 自身限制为 100 MB)。
也可直接从源码打包:bash build/export-windows.sh release && bash build/package-release.sh 0.1.0交付内容
文件 说明 OpenDance.exe主程序(Windows x86_64,PE 头校验通过,104 MB) OpenDance.pck资源包(必须与 exe 同目录,107 KB) THIRD_PARTY.md第三方开源项目声明(15 项) README.txt使用说明(含防火墙、评分规则、FAQ) contracts/opendance-web v0.1.0 契约快照 任务完成情况
T-WIN-001 → T-WIN-011 全部完成,
project.yaml中状态均为done。验收结果
脚本编译 ✓ 全部通过(无 SCRIPT ERROR) 无头测试 ✓ 580 / 580 通过(8 个测试套件) 应用启动 ✓ 180 帧无运行时错误 Windows 导出 ✓ OpenDance.exe 104 MB + OpenDance.pck,PE(MZ) 校验通过 真实 VRM ✓ 154 骨骼 VRoid 模型,humanoid 覆盖率 100% 骨骼重定向 ✓ 关键点方向与骨骼实际指向点积 1.0000 跨实现交叉校验 ✓ 关节角与 Web 服务端 TypeScript 实现逐帧一致关键验证说明
跨实现交叉校验:本端 GDScript 从服务端下发的关键点重新计算 9 个关节角,
与服务端 TypeScript 实现写在同一份 NDJSON 里的angles逐帧比对,最大偏差 < 1e-3。
这证明两端对冻结契约的理解完全一致。骨骼重定向功能性验证:不是「函数被调用了」,而是给定一组关键点后,
读出 VRM 骨骼在世界空间的实际指向,与关键点方向做点积 —— 结果为 1.0000。
这个合成公式是在真实 VRM 上暴力枚举 5 种候选后实测标定的(误差 1.9e-8)。测试框架自身的可靠性:发现测试运行器会把「静默失败的方法」记成通过
(脚本编译失败、协程被主循环截断等),已加固为:未执行任何断言的测试方法一律计为失败、
编译失败的测试文件硬失败、带 await 的异步测试可跨帧正常完成。
加固过程中因此暴露并修复了 3 个真实缺陷,其中一个导致 VRoid 模型骨骼覆盖率为 0%。使用
解压后先启动 Web 管理服务端,再运行
OpenDance.exe(需放行 TCP 8765 入站)。
详见README.txt。已知事项
- Godot 的
WebSocketPeer不暴露握手路径,无法校验/pose,仅校验子协议 - 文档原选型
godot-vrm不发布预编译产物,改用 Godot 内置 glTF 导入器 + 自实现骨骼名映射 export-windows.ps1未在真实 Windows 上执行(本次环境无 Windows)- 真实 VRM 样例因版权未入库,测试找不到时显式跳过
Downloads
- Godot 的