The asset-brief template (scope/visual-reference/naming/gen-path/ acceptance, one page) and five real briefs — station walls, rural walls, doors, floors, furniture/props — each citing its D-235 axis tokens and palette.md register rows (or the D-257 toon default), conventions.md naming/mask/footprint rules, and the image-gen -> glb-gen -> promotion path with concrete acceptance counts. Doors carry the negative no-state-frame-files constraint (runtime mechanism stays Phase 5); furniture/props' first acceptance is promoting the three unpromoted spike GLBs. deferred.md is the formal register for the T-1051 four (lamp posts, barns, TVs, billboards) + cars/Q-067, with rationale and revisit triggers — satisfying T-1051's own 'or record formal deferral' deliverable. Child stories under T-961 are created lead-side at merge. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
4.5 KiB
title, description, type, status, ticket, decision_refs, author, created, updated
| title | description | type | status | ticket | decision_refs | author | created | updated | |||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Asset Brief — Station Walls | Building-exterior wall models/textures for station (urban/industrial) settlements — D-235 wall axis | design | active |
|
Araminta | 2026-07-25 | 2026-07-25 |
Asset Brief — Station Walls
One page. Gates its child story — the story does not enter in_progress
without this brief attached.
1. Scope
Building-exterior wall surfaces for station/urban/industrial settlement
types — the D-235 WallMaterial axis, specifically the tags a station-type
template's allow filter selects (concrete_wall, steel_frame,
glass_curtain_wall, composite_panel — the "built infrastructure" register,
not the rural/vernacular tags owned by the sibling rural-walls.md brief).
This is prior-art territory: wall_structural.tscn
(renderer/models/wall_structural.tscn) already exists as an unrendered GLB,
plus rendered PNG samples at docs/workshops/art-direction-mood-board/ pipeline-samples/wall_structural_south_{64,256,1024}.png and the promoted
sprite set at client/assets/sprites/wall_structural_{north,south,east,west} _64.png — all pre-D-244, sprite-era output. This brief's job is to re-run
that same wall through the current 3D-model pipeline (D-244), not sprite
renders, and register it as the class's first manifest entry. Out of scope:
rural walls (timber/stone/rammed-earth vernacular), doors, floors — separate
briefs.
2. Visual Reference
palette.md §3.1 rows for concrete_wall, steel_frame,
glass_curtain_wall, composite_panel — warm-leaning neutral greys (never
cool-grey), fine aggregate speckle / riveted-joint / seam-grid textures per
tag, D-217 weathering ladder per row. glass_curtain_wall is the §2.1
minimal-PBR carve-out (roughness 0.05–0.2, controlled specular) — every other
tag in this set stays flat toon (roughness=1.0/specular=0.0,
postprocess_glb.py::setup_materials() default). generic_wall (§3.5) is the
flat neutral-grey, no-grain fallback terminal for whichever specific tag
hasn't shipped yet.
3. Naming
Model: <category>_<descriptor>.glb — this class is a building-exterior
surface, so it more commonly ships as a texture, not a standalone prop:
concrete_wall_basecolor.png / _normal.png / _roughness.png
(conventions.md §3), plus generic_wall_basecolor.png as the fallback
placeholder. If a standalone wall-segment model is also produced (as
wall_structural already is, pending re-promotion), it follows §1's
<category>_<descriptor>.glb (e.g. wall_structural_concrete.glb) with a
<model>_mask.png sidecar only if a tintable variant is needed (most station
walls are not tinted — material register drives color, not player-favorite
tint). No footprint_tiles metadata applies to a wall texture; a wall
segment model, if produced, is single-tile.
4. Generation Path
Standard path: /image-gen (toon-shaded concept, 3/4 front view, near-white
base) → /glb-gen (Trellis) → Blender postprocess → promotion into
client/assets/models/props/ (a wall segment is a props-category model
per conventions.md §1's category-is-manifest-authoritative rule) +
manifest.json entry. If shipping as a standalone texture instead
(the more likely first deliverable, since walls are usually a tiled surface
not a discrete mesh), the target file is textures.md, not models.md —
author a flat concept via /image-gen at the material's hue/grain per §2,
no Trellis step needed for a pure 2D PBR map.
5. Acceptance
3 starter assets enter models.md/textures.md + manifest.json (as
applicable) at planned: (1) generic_wall fallback placeholder texture —
flat neutral grey, no grain, per palette.md §3.5 — milestone-0 IF Q-119
resolves yes (not resolved here); (2) concrete_wall texture, the most
common station tag; (3) re-promotion of the existing wall_structural model
through the current (non-sprite) pipeline, closing out the only piece of
partial prior art this class has. Status flips to in-progress/final as
each is actually produced.
Cross-References
docs/assets/visual/conventions.md§1, §3 — model naming, D-235-keyed texture namingdocs/assets/visual/palette.md§2, §3.1 — toon/PBR treatment, wall material registerdocs/assets/visual/models.md,docs/assets/visual/textures.md— target catalogsclient/assets/models/manifest.jsonrenderer/models/wall_structural.tscn— existing unrendered prior art (this class)