Docs: gap-list pass bookend — underwater clips/bubbles/ambience/camera-drag session log, Blender 5.1 zero-takes export gotcha (cookbook + CLAUDE.md)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
---
|
||||
title: Facing & Underwater Feel — Build Spec (SoD facing + heavier movement + suit kit)
|
||||
title: Facing & Underwater Feel — Build Spec (SoD facing + heavier movement + suit
|
||||
kit)
|
||||
date: 2026-07-15
|
||||
links: "[[DR-051_Lantern_Realignment_Purge]], [[Roadmap_Lantern_Slice]], [[Identity_Lantern]]"
|
||||
links: '[[DR-051_Lantern_Realignment_Purge]], [[Roadmap_Lantern_Slice]], [[Identity_Lantern]]'
|
||||
permalink: gamevault/06-roadmap/facing-underwater-feel-build-spec
|
||||
---
|
||||
|
||||
# Facing & Underwater Feel — Build Spec
|
||||
@@ -44,4 +46,4 @@ FacingMathTests (cascade incl. resting-stick cast; RotateToward step/snap), Tick
|
||||
|
||||
- `Ability_Blink.asset` CooldownTicks 1 vs BlinkSystem's 150 stamp (HUD bar + window-math hygiene) — align later.
|
||||
- Skinned EG shader on non-DOTS/classic path renders undeformed (BRG-only by design, like all EG-skinned materials).
|
||||
- Bathynaut body still over hero tri budget (game-ready decimate pass parked since 07-14; kit adds ~1044).
|
||||
- Bathynaut body still over hero tri budget (game-ready decimate pass parked since 07-14; kit adds ~1044).
|
||||
@@ -1,7 +1,9 @@
|
||||
---
|
||||
title: 2026-07-16 — SoD facing, underwater feel, Bathynaut kit in-engine
|
||||
date: 2026-07-16
|
||||
links: "[[DR-052_SoD_Facing_Underwater_Feel]], [[Facing_Underwater_Feel_Build_Spec]], [[DR-051_Lantern_Realignment_Purge]], [[Art_Direction_Lantern]]"
|
||||
links: '[[DR-052_SoD_Facing_Underwater_Feel]], [[Facing_Underwater_Feel_Build_Spec]],
|
||||
[[DR-051_Lantern_Realignment_Purge]], [[Art_Direction_Lantern]]'
|
||||
permalink: gamevault/07-sessions/2026/2026-07-16-facing-underwater-feel-suit-kit
|
||||
---
|
||||
|
||||
# 2026-07-16 — SoD facing, underwater feel, Bathynaut kit (movement/animation tuning session 1)
|
||||
@@ -74,6 +76,23 @@ What the movement+animation combo still lacks for the underwater-heavy feel, in
|
||||
6. **Underwater ambience loop** — procedural low rumble + occasional distant groans; the soundscape is currently just SFX.
|
||||
7. **Walk-cycle authoring** — the retimed Synty walk still reads "land walk slowed down"; a Blender heavy-trudge clip (lead with the chest, delayed foot plants) is the real fix per the humanoid clip pipeline.
|
||||
|
||||
## Gap-list pass (same day — operator: "do all the items")
|
||||
|
||||
All 7 items shipped + Play-validated. Client presentation + animation assets only — no netcode surface.
|
||||
|
||||
1. **(1+7) Clips**: `A_Idle_Sway` (4s buoyant full-body loop: spine pitch/roll, hips bob, arm drift) + `A_Walk_Trudge` (1.6s chest-lead trudge: plant-hold keys, −40° knee drag, heavy hip bob) + `A_Bank_L/R` (additive lean poses), scripted-posed on the Synty base rig — new clips master `ArtSource/Blender/Anim_Player_Underwater.blend`. Wired via `PlayerRigTools.ImportUnderwaterClips` (humanoid/CreateFromThisModel/root-baked, banks additive-ref frame 1) + `WireUnderwaterFeelClips` (Idle → sway; Locomotion forward (0,1) → trudge, strafe/back stay Synty; additive **Posture** layer + 1D Bank tree).
|
||||
2. **(2) Start/stop lean** rides the idle(upright)⇄trudge(chest-lead) 0.25s transitions — lean-in on start, settle-back on stop.
|
||||
3. **(4) Banking**: `PlayerAnimationDriveSystem` drives `Bank` (-1..1) from the signed facing turn rate (`FeelConfig.BankFullTurnDegPerSec`=270, exp-smoothed; local player only — remotes accepted omission). **Rukhanka 2.9 handles the additive layer + humanoid additive-reference clips**: 10 params, zero errors, peak −0.78 on a hard left turn, decays to 0.
|
||||
4. **(3) Bubble exhaust**: rising `Bubbles` pool emitter (negative gravity) — dome trickle every ~1.6s (jittered) + one per footstep. `FeelConfig.Bubble*`.
|
||||
5. **(6) Ambience**: `AmbientAudioSystem` re-voiced — 8s seamless `underwater_bed` (38Hz sub pair beating exactly once per loop + 55/82Hz, 0.25Hz swell) + distant groans (58→34Hz, sin² attack/release window, interval ±40% + pitch jitter, first ~12s in). `FeelConfig.Ambience*/Groan*`.
|
||||
6. **(5) Camera weight**: `FeelConfig.CameraDragMult` (0.8) multiplies the rig's serialized `FollowSharpness` at the use site — scenes untouched, 0-safe.
|
||||
|
||||
**New durable gotcha:** Blender **5.1 per-action FBX export bakes NO animation with the 4.4 recipe** (slotted actions break the `bake_anim_use_all_actions=False` active-action path — takeInfos 0, ~50KB file, silent). **Fix: also pass `bake_anim_use_nla_strips=False`** → the exporter samples the evaluated scene over the frame range (~270KB, takes import). Plus: `ModelImporter.defaultClipAnimations` only enumerates takes AFTER a rig-typed `SaveAndReimport` (two-pass import in `ImportUnderwaterClips`).
|
||||
|
||||
Validation: 411/411 EditMode green · Play zero errors (incl. the Rukhanka additive-layer risk) · Bank param live-verified · bed + groan sources playing at FeelConfig volumes · bubbles emitter alive · idle stance renders with the full kit (no partial-clip collapse — all clips key every bone).
|
||||
|
||||
All feel values live on `FeelConfig` defaults (compile-time; overlay rows for the new knobs on request).
|
||||
|
||||
## Next session
|
||||
|
||||
Operator eyes-on feel pass with the live knobs (turn rates, sharpness, footstep values), then pick from the gap list (recommend 1+3 first). Post-impl review findings (wf_9a8d6162-e72) to triage if any confirmed.
|
||||
Operator eyes-on feel pass with the live knobs (turn rates, sharpness, footstep values), then pick from the gap list (recommend 1+3 first). Post-impl review findings (wf_9a8d6162-e72) to triage if any confirmed.
|
||||
@@ -2,7 +2,9 @@
|
||||
title: DR-052 — Shape-of-Dreams facing model + underwater movement feel
|
||||
date: 2026-07-16
|
||||
status: locked
|
||||
links: "[[2026-07-16_Facing_Underwater_Feel_Suit_Kit]], [[Facing_Underwater_Feel_Build_Spec]], [[DR-048_Lantern_Adoption_Full_Pivot]], [[DR-051_Lantern_Realignment_Purge]]"
|
||||
links: '[[2026-07-16_Facing_Underwater_Feel_Suit_Kit]], [[Facing_Underwater_Feel_Build_Spec]],
|
||||
[[DR-048_Lantern_Adoption_Full_Pivot]], [[DR-051_Lantern_Realignment_Purge]]'
|
||||
permalink: gamevault/07-sessions/decisions/dr-052-so-d-facing-underwater-feel
|
||||
---
|
||||
|
||||
# DR-052 — Shape-of-Dreams facing model + underwater movement feel
|
||||
@@ -24,4 +26,4 @@ links: "[[2026-07-16_Facing_Underwater_Feel_Suit_Kit]], [[Facing_Underwater_Feel
|
||||
|
||||
## Suit attachment pipeline (the reusable recipe)
|
||||
|
||||
Blender kitbash attachments → rigid-skin (vgroup w=1 + armature modifier) → join per shader role → FBX (UNHIDE the armature first — hidden = silently skinless) → `PlayerRigTools.AttachBathynautKit`: bone-name rebind + **rebase** (verts to rest-world; bindposes = inverse of RIGID scale-stripped rest matrices; `RecalculateTangents`) → `Rebased_*.asset` meshes. Glow pieces ride `ProjectM/EmissiveGloamSkinned` (Rukhanka ComputeDeformedVertex; DOTS-instanced block BEFORE the include; `_DeformedMeshIndex` in Properties for the baker's validation).
|
||||
Blender kitbash attachments → rigid-skin (vgroup w=1 + armature modifier) → join per shader role → FBX (UNHIDE the armature first — hidden = silently skinless) → `PlayerRigTools.AttachBathynautKit`: bone-name rebind + **rebase** (verts to rest-world; bindposes = inverse of RIGID scale-stripped rest matrices; `RecalculateTangents`) → `Rebased_*.asset` meshes. Glow pieces ride `ProjectM/EmissiveGloamSkinned` (Rukhanka ComputeDeformedVertex; DOTS-instanced block BEFORE the include; `_DeformedMeshIndex` in Properties for the baker's validation).
|
||||
Reference in New Issue
Block a user