Docs: /art-dev skill + art-track kickoff session log

New /art-dev skill (SKILL.md + blender-cookbook + style-and-practices refs)
driving LANTERN Blender art work: Auto (headless) for simple changes, the
hybrid nudge-and-bake loop for precision/aesthetics, game-camera verification,
Blender-beginner coaching. Session log covers the A0 style-proof asset set +
the Bathynaut refinement.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-14 14:40:08 -07:00
parent 8edae9f439
commit 2b78c68424
4 changed files with 429 additions and 0 deletions
@@ -0,0 +1,43 @@
---
date: 2026-07-14
type: session
tags: [session, lantern, art, workstream-a, blender, skill, a0, kitbash]
permalink: gamevault/07-sessions/2026/2026-07-14-b-art-track-kickoff-artdev-skill
---
# Session 2026-07-14 (B) — Art track kickoff: A0 style-proof assets + the `/art-dev` skill
> First real Workstream-A sitting. Operator wanted to explore the art side in Blender (parallel agent held Unity → read-only there). Built the A0 style-proof asset set, adopted a hybrid Blender workflow, and productized the whole thing as a reusable skill. Then refined the suit and (next) started the in-engine bake once the editor freed up.
## Done
**A0 status grounded:** written constitution ([[Art_Direction_Lantern]]) + recipes ([[Lantern_Art_Pipeline_Recipes]]) + the material foundation (`PaletteAtlas.png` + 3 shared materials) already existed; the **in-engine style-proof scene gate was still open**. Blender was an empty default scene.
**Built the A0 style-proof asset set** (all in `ArtSource/Blender/`, a NEW repo-level source-art home OUTSIDE `Assets/` so a live Unity session never auto-imports mid-work; textures packed):
- `Prop_CargoCrate` (92 tris) — proves the material keystone: ONE palette-atlas material, colour by *placed* UV (Imphenzia), zero per-asset texturing. Also exported `SM_Prop_CargoCrate.glb`.
- `Prop_GlowFlora` (380) — bioluminescent anemone clump, cold **teal** emissive (ambient gloam clutter).
- `Creature_WispMote` (110) — Drifter will-o'-the-wisp: gloam-green emissive core + dark petal crown + curved shrinking tail trail.
- `Creature_Drowner` (2742) — **Synty-crew Strider kitbash**: gloam-tinted drowned flesh, hunched shamble pose on the rig, cold glowing eyes (operator-placed via nudge-and-bake, bone-parented), kelp strands.
- `Suit_Bathynaut_Kitbash` (~9k ⚠ over the ≤6k hero budget) — Synty SpaceSoldier body+armour + custom brass diving-bell dome, back tank pack, chest beacon. Refined this session (below).
**Palette ontology demonstrated across the set in 3 light-flavors:** warm gold = true/ours (diver beacon/porthole/shoulder lamp) · cold green = false/gloam (wisp core, drowner eyes) · cold teal = ambient clutter (flora).
**Bathynaut refinement pass** (via the new skill): porthole rebuilt as ONE dome-*seated* bezel assembly (open bezel → amber glass + grille + rivets visible; dropped the floating brow) → cohesion fixed; tank pack **rounded out** (domed caps, curved yoke, regulator, backplate, warm valve tops); **shoulder dive-lamp** seated on the outer deltoid pauldron (raycast-to-surface) + parented to `Clavicle_L`.
**Productized as the `/art-dev` skill** (`.claude/skills/art-dev/`): SKILL.md (process spine — size by complexity → ground → agree → setup → build → verify → export → Unity-bake handoff → doc bookend → commit) + `references/blender-cookbook.md` (all battle-tested blendermcp code) + `references/style-and-practices.md` (style essentials + Blender-beginner cheat-sheet). Does simple changes headless (Auto); drops into the hybrid **nudge-and-bake** loop for precision/aesthetics.
## Decisions / notes
- **Hybrid nudge-and-bake workflow adopted** (operator's call): headless is great at bulk, bad at precision/taste; the operator (a Blender **beginner**) has a live GUI → I stage+isolate+select, they nudge, I bake back (raycast/shrinkwrap depth-snap → restore material → Child-Of bone-parent → **reusable bone-local offset**). Proven end-to-end fixing the Drowner eyes. Native memory [[blender-hybrid-nudge-and-bake]].
- **★ Verify from the GAME CAMERA, not just a hero 3/4** (operator's insight, now a skill Phase-5 rule): this is a top-down ARPG (rig = Pitch 45° / Dist 13 / FOV 55, `PrototypeCameraRig.cs`). Finding: from the gameplay angle you see the **dome crown + shoulders + back-pack**; the **face/porthole is near-invisible in-game** → put detail + emissive accents on TOP-facing surfaces; the face is hero/close-up only. Check both facings (front + back-away).
- **Blender 5.1 gotchas** (→ [[blender-mcp-and-unity-mcp-v10]]): combined Synty character FBX import needs a window-override + `ignore_leaf_bones=True, automatic_bone_orientation=False`; the render-engine enum is `BLENDER_EEVEE` (not `_NEXT`); Synty faces have modeled eye-sockets + a shared humanoid rig (`Root/Hips/Spine_*/Neck/Head/Clavicle/Shoulder/Elbow/Hand/...`); pose axes on this rig: arm-down = `Z` on Shoulder, forward-hunch = `X` on Spine, X/Y mirror L/R, Z symmetric.
- Suit/creature kit are **silhouette concepts** — not rig-bound for animation yet (Drowner posed, eyes/shoulder-lamp bone-parented as a start); the Bathynaut is over hero-budget (game-ready pass decimates + picks body-or-armour).
## Open / deferred (surfaced, NOT silent)
- **In-engine verification STARTED this session** (operator lifted the read-only constraint + granted full editor freedom for the art-verification portion): bake the statics (crate, flora) → shared palette materials → gameplay subscene → judge under murk + URP bloom + the game camera (full / 200px / grayscale) = the real A0 gate. Skinned bake (suit/creatures via Rukhanka + Skinned-Palette) is the harder follow-on.
- **3 master ShaderGraphs** (esp. Emissive-Gloam's flicker-cadence param) still unauthored — needs Unity.
- The Bathynaut wears 3 warm lights (porthole+chest+shoulder) — on-ontology but could dial the chest lamp down.
## Related
- [[Art_Direction_Lantern]] · [[Lantern_Art_Pipeline_Recipes]] · [[Roadmap_Lantern_Slice]] (Workstream A) · [[blender-hybrid-nudge-and-bake]] · [[blender-mcp-and-unity-mcp-v10]]