introduce nimmerworld/style/ — visual-language as its own typed contract Style is a cross-cutting concern (trait-palette touches at minimum 5 of the 9 architecture domains); it deserves its own typed-contract surface, mirroring the architecture-index → 9 domain files pattern.
This commit is contained in:
61
style/style-index.md
Normal file
61
style/style-index.md
Normal file
@@ -0,0 +1,61 @@
|
||||
# Nimmerworld — Style Index
|
||||
|
||||
> *Visual language is its own typed contract. This file is the cross-domain index of all visual / aesthetic / UI decisions, pointing at canonical sub-guides and enforcing consistency across the architecture's nine domain files.*
|
||||
>
|
||||
> *Companion to: [`../architecture-index.md`](../architecture-index.md). Sub-guides live alongside this file in `nimmerworld/style/`.*
|
||||
|
||||
---
|
||||
|
||||
## Spine rule — the achromatic / chromatic discipline
|
||||
|
||||
**The 8 trait-palette is exclusively chromatic. Achromatic colors are reserved for UI / environment / decay.** This is the load-bearing constraint that makes diegetic text rendering possible without overlay-boxes:
|
||||
|
||||
| Palette | Reserved for |
|
||||
|---|---|
|
||||
| **8 saturated chromatic hues** (the trait-wheel) | The 8 traits — and only the 8 traits |
|
||||
| **White** | Text and pure-light UI overlay |
|
||||
| **Black** | Shadows, voids, the imperial-net's deep-strip |
|
||||
| **Greys** | Neutral defaults — NPCs without active trait-pulse, ambient surfaces |
|
||||
| **Browns / earth tones** | Aged surfaces, decayed materials, the rust-and-patina layer |
|
||||
|
||||
**Why this matters.** Color is *vocabulary*; reserving it for *information* (trait-state) keeps the achromatic palette free for the *medium* that carries the information (text, neutral environment, depth). Most games end up with textbox-everywhere because they let saturated colors leak into environmental art, forcing text-on-box for legibility. Nimmerworld doesn't need the textbox because nothing is competing for white's luminance slot — *white means one thing: you're being told something*.
|
||||
|
||||
**This rule propagates everywhere.** Any new visual element must respect it:
|
||||
|
||||
- A new mod-class CANNOT introduce a saturated chromatic accent unrelated to a trait-coordinate
|
||||
- A new faction's heraldry CANNOT use a chromatic color outside the trait-palette
|
||||
- A new shader register CANNOT use saturated chromatic tones for environmental fidelity
|
||||
- Decorative environmental color MUST be muted (browns / greys / desaturated tones) to keep the trait-wheel's meaning intact
|
||||
|
||||
When in doubt, ask: *does this color carry trait-information, or is it decorative?* If decorative, desaturate. If trait-information, use the canonical wheel-position from [`trait-palette.md`](./trait-palette.md).
|
||||
|
||||
## Sub-guides
|
||||
|
||||
| Sub-guide | What it covers | Status |
|
||||
|---|---|---|
|
||||
| [`trait-palette.md`](./trait-palette.md) | The 8 traits on the color wheel, 4 oppositional pairs at 180°, schoolchild-descriptions, motion-signatures | ✓ canonical (v0.1) |
|
||||
| `typography.md` | Text rendering, hierarchy, no-textbox commitment, the white-as-text-only semantic-slot | TODO |
|
||||
| `shaders-by-register.md` | Three-shader philosophy: gameworld PBR / liminal blur / imperial-net emission; clasp candlelight-in-fog override; clasp color-merge | TODO |
|
||||
| `body-feedback.md` | NPC body-pulse rules during gesture-alignment; trait-flash event-vocabulary; cross-cycle trait-drift rendering | TODO |
|
||||
| `ui-elements.md` | Gesture-circle UI styling, universal-translator tokenizer-view, profile-switch indicator, hardstop visual-distinct treatment | TODO |
|
||||
| `relays.md` | Diegetic-relay visual vocabulary, pulse-pattern lexicon (slow / fast / irregular / cross-district shimmer / dark) | TODO |
|
||||
| `asset-aesthetic.md` | Base-limb texture rules, mod aesthetic registers per faction, muted-melancholic environmental treatment | TODO |
|
||||
|
||||
Sub-guides will be filled out as visual decisions land. The skeleton plus `trait-palette.md` is the v0.1 spine; everything else grows from there.
|
||||
|
||||
## Cross-references into architecture domain files
|
||||
|
||||
The trait-palette is referenced from many architectural primitives. When `trait-palette.md` changes, these sections may need updates too (or they may reference back into here for canonical definitions):
|
||||
|
||||
| What | Where it's referenced architecturally |
|
||||
|---|---|
|
||||
| Trait-color rendering on NPC bodies | [`../topology-and-rendering/architecture.md`](../topology-and-rendering/architecture.md) §Color-language |
|
||||
| Trait-color flashes on gesture-alignment | [`../runtime-engine/architecture.md`](../runtime-engine/architecture.md) §Phase-locked overlay-loop ladder + §Gesture-alignment as recursive-lemniscate |
|
||||
| Gesture-circle UI placement of trait-sectors | [`../player-experience/architecture.md`](../player-experience/architecture.md) §The trait-circle as gestural primary modality |
|
||||
| Color-coding of mod-classes | [`../identity-and-personhood/architecture.md`](../identity-and-personhood/architecture.md) §Mods as trait-bearers |
|
||||
| Color-coding in three-shader philosophy | [`../topology-and-rendering/architecture.md`](../topology-and-rendering/architecture.md) §Visual rendering |
|
||||
| Faction color-politics | [`../topology-and-rendering/architecture.md`](../topology-and-rendering/architecture.md) §Color-language → Faction color-politics table |
|
||||
|
||||
---
|
||||
|
||||
**Version:** 0.1 | **Created:** 2026-04-26 | **Updated:** 2026-04-26
|
||||
Reference in New Issue
Block a user