docs(decisions): update camera presets, bone names, accessory slots

D-148/D-158: confirm three camera presets (frontal -5°, dramatic -30°,
top-down 0°), supersede 45° isometric. Update asset organization doc
with verified Quaternius bone names, add wrist_l/r and earring_l/r
accessory slots, fix eyebrow naming convention (short names, no prefix).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-20 07:48:57 +01:00
co-authored by Claude Opus 4.6
parent 23ec1ddebd
commit f34e6362c4
3 changed files with 32 additions and 28 deletions
@@ -190,10 +190,10 @@ client/assets/characters/
mutton_chops_mask.png
...
eyebrows/
eyebrows_regular.glb # Source tier eyebrows
eyebrows_female.glb
eyebrows_teen.glb
eyebrows_thick.glb
regular.glb # Source tier eyebrows (short names — no prefix)
female.glb
teen.glb
thick.glb
...
clothing/
<item_id>/ # One directory per clothing item
@@ -304,21 +304,21 @@ These are the segment suffixes in filenames:
| Segment | File suffix | Bones covered | Notes |
|---|---|---|---|
| Head | `seg_head` | Head | |
| Neck | `seg_neck` | Neck | |
| Torso (full) | `seg_torso` | Spine, Spine1, Spine2 | Default; swappable |
| Torso (upper only) | `seg_torso_upper` | Spine1, Spine2 | For low-cut shirts, tank tops |
| Upper arm left | `seg_arm_upper_l` | LeftArm (shoulder to elbow) | |
| Upper arm right | `seg_arm_upper_r` | RightArm | |
| Lower arm left | `seg_arm_lower_l` | LeftForeArm | |
| Lower arm right | `seg_arm_lower_r` | RightForeArm | |
| Hand left | `seg_hand_l` | LeftHand + finger bones | |
| Hand right | `seg_hand_r` | RightHand + finger bones | |
| Upper leg left | `seg_leg_upper_l` | LeftUpLeg (hip to knee) | |
| Upper leg right | `seg_leg_upper_r` | RightUpLeg (hip to knee) | |
| Lower leg left | `seg_leg_lower_l` | LeftLeg (knee to ankle) | |
| Lower leg right | `seg_leg_lower_r` | RightLeg (knee to ankle) | |
| Foot left | `seg_foot_l` | LeftFoot + toe bones + ankle overlap | Extends past ankle bone; 1-ring vertex overlap with lower leg segment |
| Foot right | `seg_foot_r` | RightFoot + toe bones + ankle overlap | Extends past ankle bone; 1-ring vertex overlap with lower leg segment |
| Neck | `seg_neck` | neck_01 | |
| Torso (full) | `seg_torso` | spine_01, spine_02, spine_03 | Default; swappable |
| Torso (upper only) | `seg_torso_upper` | spine_02, spine_03 | For low-cut shirts, tank tops |
| Upper arm left | `seg_arm_upper_l` | upperarm_l (shoulder to elbow) | |
| Upper arm right | `seg_arm_upper_r` | upperarm_r | |
| Lower arm left | `seg_arm_lower_l` | lowerarm_l | |
| Lower arm right | `seg_arm_lower_r` | lowerarm_r | |
| Hand left | `seg_hand_l` | hand_l + finger bones | |
| Hand right | `seg_hand_r` | hand_r + finger bones | |
| Upper leg left | `seg_leg_upper_l` | thigh_l (hip to knee) | |
| Upper leg right | `seg_leg_upper_r` | thigh_r (hip to knee) | |
| Lower leg left | `seg_leg_lower_l` | calf_l (knee to ankle) | |
| Lower leg right | `seg_leg_lower_r` | calf_r (knee to ankle) | |
| Foot left | `seg_foot_l` | foot_l + ball_l/ball_leaf_l + ankle overlap | Extends past ankle bone; 1-ring vertex overlap with lower leg segment |
| Foot right | `seg_foot_r` | foot_r + ball_r/ball_leaf_r + ankle overlap | Extends past ankle bone; 1-ring vertex overlap with lower leg segment |
| Eyes | `seg_eyes` | Attached to Head bone (small mesh) | |
| Eyebrows | `seg_eyebrows` | Attached to Head bone (small mesh) | |
@@ -417,19 +417,23 @@ unambiguous at a glance.
Format: `<slot>_<descriptor>.glb`
Slots: `hat`, `goggles`, `mask`, `backpack`, `belt`, `earring`, `necklace`, `held_l`, `held_r`.
Slots: `hat`, `goggles`, `mask`, `backpack`, `belt`, `earring_l`, `earring_r`, `necklace`, `wrist_l`, `wrist_r`, `held_l`, `held_r`.
Each slot maps to a specific bone for BoneAttachment3D:
- `hat` -> Head bone
- `goggles` -> Head bone
- `mask` -> Head bone
- `backpack` -> Spine2 bone
- `belt` -> Hips bone
- `earring` -> Head bone
- `held_l` -> LeftHand bone
- `held_r` -> RightHand bone
- `backpack` -> spine_03 bone
- `belt` -> pelvis bone
- `earring_l` -> Head bone
- `earring_r` -> Head bone
- `necklace` -> Head bone
- `wrist_l` -> lowerarm_l bone
- `wrist_r` -> lowerarm_r bone
- `held_l` -> hand_l bone
- `held_r` -> hand_r bone
Examples: `hat_hardhat`, `goggles_welding`, `backpack_small`, `held_r_wrench`.
Examples: `hat_hardhat`, `goggles_welding`, `backpack_small`, `earring_l_stud`, `wrist_l_watch`, `held_r_wrench`.
### Recolor Masks