Files
settled-reach/docs/assets/visual/icons.md
T
jpmschweitzerandClaude Fable 5 f77e15d075 docs(assets): 3D-model+texture catalog, glb-gen production path, conventions (T-1050)
Instantiates the five D-244 catalog files (models/textures/artwork/icons/
effects — icons carries the 13 as-built SVGs, stance icons traced to their
consumer and marked final), creates client/assets/models/{furniture,props}
with a schema-documented manifest.json mirroring the character manifest,
fixes glb-gen SKILL.md's stale 'path does not exist' paragraph, and authors
docs/assets/visual/conventions.md: category-first model naming (araminta
ruling), mask sidecars per the character convention, D-235-token-keyed
texture naming, footprint_tiles as manifest metadata. Door-state and
TileSet conventions are recorded as explicit deferrals (Phase-5 owned).
visual/README.md carries both this ticket's count/link updates and
T-1052's palette-section rewrite (shared file, committed here).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-25 20:20:04 +02:00

51 lines
2.8 KiB
Markdown

---
title: "Icons — Visual Assets"
description: "UI icon asset catalog — as-built inventory of client/assets/icons/"
type: design
status: active
---
# Icons — Visual Assets
UI icons and status indicators. 2D, UI layer only — not part of the D-244 3D
in-world pivot (icons render on `CanvasLayer`, not in the 3D scene).
## Generation Approach
Hand-authored SVGs, tinted at runtime via `res://shaders/icon_tint.gdshader`
(see `client/ui/stance_indicator.gd` for the tint-shader integration
pattern).
## Assets
13 SVGs already exist in `client/assets/icons/` — this is the as-built
inventory, not a zero-start table.
| ID | Filename | Status | Category | Notes | Sprint/Ticket |
|----|----------|--------|----------|-------|---------------|
| ICO-001 | `icon_stance_walk.svg` | final | Stance | Wired into `client/ui/stance_indicator.gd` (`StanceIndicator` icon map), tinted via `icon_tint.gdshader`. | — |
| ICO-002 | `icon_stance_sprint.svg` | final | Stance | Wired into `stance_indicator.gd`. | — |
| ICO-003 | `icon_stance_careful.svg` | final | Stance | Wired into `stance_indicator.gd`. | — |
| ICO-004 | `icon_stance_crouch.svg` | final | Stance | Wired into `stance_indicator.gd`. | — |
| ICO-005 | `icon_action_examine.svg` | placeholder | Action | SVG exists; not yet wired into a script/scene. | — |
| ICO-006 | `icon_action_follow.svg` | placeholder | Action | SVG exists; not yet wired into a script/scene. | — |
| ICO-007 | `icon_action_observe.svg` | placeholder | Action | SVG exists; not yet wired into a script/scene. | — |
| ICO-008 | `icon_action_talk.svg` | placeholder | Action | SVG exists; not yet wired into a script/scene. | — |
| ICO-009 | `icon_item_access_token.svg` | placeholder | Item | SVG exists; not yet wired into a script/scene. | — |
| ICO-010 | `icon_item_comm_log.svg` | placeholder | Item | SVG exists; not yet wired into a script/scene. | — |
| ICO-011 | `icon_item_manifest.svg` | placeholder | Item | SVG exists; not yet wired into a script/scene. | — |
| ICO-012 | `icon_status_health.svg` | placeholder | Status | SVG exists; not yet wired into a script/scene. | — |
| ICO-013 | `icon_status_perception.svg` | placeholder | Status | SVG exists; not yet wired into a script/scene. | — |
`Status` here follows the shared vocab (`docs/assets/README.md`):
`final` = shipped and wired into a consuming script/scene; `placeholder` =
asset exists on disk but has no confirmed runtime consumer yet. If a
teammate wires one of the placeholder icons into a script, flip its row to
`final` and note the consumer, matching the `icon_stance_*` rows above.
## Cross-References
- `client/assets/icons/` — the SVG files this table catalogs
- `client/ui/stance_indicator.gd` — the one confirmed consumer (stance icons)
- `res://shaders/icon_tint.gdshader` — runtime tint shader