docs: 消除 Gitea 模棱两可 Unicode 告警(全角标点紧邻 ASCII 时改为半角)
依据 Gitea v1.27.3 modules/charset/escape_stream.go 的判定规则 (analyzeDetectResults:仅当左右相邻字符都不是非 ASCII 时才标记, 且 _common 表恒定生效),把说明文档中会被标记的全角标点 (,:;?!() 等)改为半角,并保证成对括号宽度一致。 中文语境中的全角标点(左右均为中文)保持原样,不动代码与契约语义。
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# T-WIN-006 关键点 -> VRM 骨骼重定向
|
||||
|
||||
- **状态**:done
|
||||
- **依赖**:T-WIN-005、T-WIN-004
|
||||
- **状态**: done
|
||||
- **依赖**: T-WIN-005、T-WIN-004
|
||||
|
||||
## 目标
|
||||
|
||||
@@ -18,20 +18,20 @@ src/anim/skeleton_retarget.gd
|
||||
## 算法
|
||||
|
||||
1. 每根骨骼指定一条骨链(起点关键点,终点关键点)
|
||||
2. 取骨骼静止朝向 `rest_dir`(由该骨与首个子骨的位置差得出,**不假设模型骨骼轴向**)
|
||||
2. 取骨骼静止朝向 `rest_dir`(由该骨与首个子骨的位置差得出,**不假设模型骨骼轴向**)
|
||||
3. 目标朝向由两个关键点在世界空间的方向得出
|
||||
4. `delta` = rest_dir -> target_dir 的最小旋转四元数(保留扭转/roll)
|
||||
4. `delta` = rest_dir -> target_dir 的最小旋转四元数(保留扭转/roll)
|
||||
5. `desired = Basis(delta) x rest_global_basis`
|
||||
6. `pose_local = parent_global_basis⁻¹ x desired`
|
||||
|
||||
**第 6 步的合成公式是实测标定的**:Godot 文档未写明 rest/pose 的合成顺序,
|
||||
**第 6 步的合成公式是实测标定的**: Godot 文档未写明 rest/pose 的合成顺序,
|
||||
在真实 VRoid 模型上暴力枚举 5 种候选公式,只有该式误差为 1.9e-8(其余 ~0.14)。
|
||||
已有回归测试守护,不得凭记忆改写。
|
||||
|
||||
## 坐标转换
|
||||
|
||||
契约 4 的 MediaPipe 归一化坐标 -> Godot 世界方向:
|
||||
`Vector3(x x aspect, -y, -z x aspect)`(x/z 以图像宽为基准故乘宽高比)。
|
||||
`Vector3(x x aspect, -y, -z x aspect)`(x/z 以图像宽为基准故乘宽高比)。
|
||||
|
||||
## 验收
|
||||
|
||||
|
||||
Reference in New Issue
Block a user