Accept ADR-0018 option 2: adopt the Quaternius 62-joint rig at runtime
This commit is contained in:
1 parent
f5fa321a8f
commit
e2f52fbfd1
4 files changed
+31
-29
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# ADR-0018: Quaternius Stage 2 — adopt source proportions at runtime
|
||||
|
||||
- **Status:** Proposed
|
||||
- **Status:** Accepted (2026-11-05, owner chose option 2)
|
||||
- **Date:** 2026-11-05
|
||||
- **Supersedes:** ADR-0017 decision 2 (Stage 1 keeps the 13-core contract)
|
||||
|
||||
@@ -29,23 +29,18 @@ rejection conditions.
|
||||
|
||||
## Decision
|
||||
|
||||
Stop the Stage 1 rollout. Adopt the **Quaternius source proportions** as the runtime character
|
||||
scale, rather than warping them to the old contract numbers. Two sub-options are open and must
|
||||
be chosen by the owner:
|
||||
Stop the Stage 1 rollout and **adopt the Quaternius 62-joint rig at runtime** (owner chose
|
||||
option 2). The mesh is not proportion-warped: it keeps its source LOD (3,199 welded verts /
|
||||
6,206 tris) and only the arm-down rest pose is baked.
|
||||
|
||||
1. **Keep the 13-core bone names, change their rest positions to the Quaternius joints.**
|
||||
The contract armature keeps 14 bones, but the rest positions and gear attach points are
|
||||
re-derived from the Quaternius skeleton (hip ≈0.87, shoulder ≈0.148/1.39, wrist ≈0.99,
|
||||
knee ≈0.52). `NpcAvatar`'s bone count and pose composition stay; gear offsets and the
|
||||
contract tests are re-baked. This is the smallest runtime change that keeps the Quaternius
|
||||
silhouette.
|
||||
2. **Adopt the 62-joint rig at runtime.** Ship the Quaternius skeleton (including the optional
|
||||
30 finger + 2 foot bones) and retarget Idle/Walk onto it. `NpcAvatar` bone mapping, gear
|
||||
attach points and the pose composition change together. Largest change, closest to the
|
||||
source.
|
||||
- `NpcAvatar` maps the Quaternius joint names instead of the 13-core names.
|
||||
- Gear attach points are re-derived from the Quaternius skeleton (hip ≈0.87, shoulder ≈0.148/1.39,
|
||||
wrist ≈0.99, knee ≈0.52).
|
||||
- The Quaternius Idle and Walk clips are used directly — they are authored for the 62-joint rig,
|
||||
so no retargeting pass is needed. Combat/gun/sword clips stay unused.
|
||||
|
||||
Whichever is chosen, the mesh is **not** proportion-warped: it keeps its source LOD (3,199 welded
|
||||
verts / 6,206 tris) and only the arm-down rest pose is baked.
|
||||
Option 1 (keep the 13-core names with Quaternius rest positions) is rejected in favour of the
|
||||
full source rig.
|
||||
|
||||
## Consequences
|
||||
|
||||
@@ -60,8 +55,8 @@ verts / 6,206 tris) and only the arm-down rest pose is baked.
|
||||
- The runtime contract numbers (hip 0.62, shoulder 0.27, hand 0.78) change; every gear attach
|
||||
point, `npc_proportions` guide, fit measurement and pose-composition constant must be
|
||||
re-derived and re-tested.
|
||||
- Option 2 additionally rewrites `NpcAvatar`'s bone mapping and animation retarget, which is a
|
||||
larger, riskier change than the mesh swap.
|
||||
- `NpcAvatar`'s bone mapping and pose composition are rewritten for the 62-joint rig, a larger
|
||||
change than the mesh swap.
|
||||
- The 12-variant rollout and the 12×6 baseline are still blocked until the new rest positions
|
||||
and gear fit are owner-approved.
|
||||
|
||||
@@ -75,6 +70,6 @@ verts / 6,206 tris) and only the arm-down rest pose is baked.
|
||||
|
||||
## Open question
|
||||
|
||||
Choose option 1 (13-core names, Quaternius rest positions) or option 2 (62-joint runtime).
|
||||
Recommendation: **option 1** first — it preserves the silhouette, keeps `NpcAvatar`'s bone count
|
||||
and pose composition, and only re-derives gear offsets and contract tests.
|
||||
Resolved: option 2 (62-joint runtime) is the owner's choice. The first implementation step is
|
||||
the `NpcAvatar` bone-map + gear-attach re-derivation, then the slot/AO bake and the 12-variant
|
||||
rollout.
|
||||
@@ -198,9 +198,10 @@ deltoid + hand) — both are the gate's rejection conditions.
|
||||
contract proportions; the gate fails and Stage 2 (a 62-joint runtime ADR) is indicated. Do not
|
||||
start the 12-variant rebuild on the warped base.
|
||||
|
||||
[ADR-0018](adr/0018-quaternius-stage2-runtime-rig.md) records the Stage 2 decision: adopt the
|
||||
Quaternius source proportions at runtime (option 1: keep the 13-core names with Quaternius rest
|
||||
positions; option 2: ship the 62-joint rig), pending the owner's choice.
|
||||
[ADR-0018](adr/0018-quaternius-stage2-runtime-rig.md) records the Stage 2 decision (accepted
|
||||
2026-11-05, owner chose option 2): adopt the **Quaternius 62-joint rig at runtime**, keep the
|
||||
mesh at source LOD, re-derive gear attach points from the Quaternius skeleton, and use the
|
||||
Quaternius Idle/Walk clips directly (no retarget).
|
||||
|
||||
## Contract mismatch
|
||||
|
||||
|
||||
Reference in new issue
Block a user