palette
<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->
palette
<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->TODO: describe this module.
Interface
What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.
conforms to
zero/source-extract/v2house.palette — every material the Odeon Marisol is made of. The colours are NOT restated here: they are read out of `ovation.film`'s PALETTE, which is the single source of truth for the whole film. What this module adds is the SURFACE — how each of those colours behaves in light. Gilt is metal, so it has no diffuse at all and lives entirely in its highlight. Velvet is sheen: a cloth whose grazing angles are brighter than its face, which is the only reason an oxblood seat reads as velvet rather than as dark red plastic under one sodium worklight. local Pal = require("house.palette") Pal.ensure() -- mints them all, once Pal.gilt -- "@world::house.materials.house_gilt" style ref Every material is written into /source/house/materials/.
rgba(c: { number }, a: number?) → void
| arg | type | description |
|---|---|---|
| c | { number } | |
| a | number? |
ensure(force: boolean?) → void
Mint every house material. Idempotent — a second call rewrites the same specs.
| arg | type | description |
|---|---|---|
| force | boolean? |
lerp(a: number, b: number, t: number) → number
| arg | type | description |
|---|---|---|
| a | number | |
| b | number | |
| t | number |
plasterPaint(x: number, y: number, z: number) → void
Plaster: soot climbing it, damp coming down from the cornice, and a blotch nobody has washed since it closed.
| arg | type | description |
|---|---|---|
| x | number | |
| y | number | |
| z | number |
giltPaint(x: number, y: number, z: number) → void
Gilt: the leaf is gone in patches and what is under it has gone dull and green.
| arg | type | description |
|---|---|---|
| x | number | |
| y | number | |
| z | number |
velvetPaint(x: number, y: number, z: number) → void
Velvet: bleached along the tops it is touched on, still deep down in the pile.
| arg | type | description |
|---|---|---|
| x | number | |
| y | number | |
| z | number |
boardPaint(x: number, y: number, z: number) → void
Board: plank-by-plank value, and the tracks worn down the aisles.
| arg | type | description |
|---|---|---|
| x | number | |
| y | number | |
| z | number |
drapePaint(x: number, y: number, z: number) → void
Hanging velvet: dusty along the hem, and lighter where a pleat has been facing the room.
| arg | type | description |
|---|---|---|
| x | number | |
| y | number | |
| z | number |
sheetPaint(x: number, y: number, z: number) → void
Cloth over the seats: grey with years, darker in every fold it has kept.
| arg | type | description |
|---|---|---|
| x | number | |
| y | number | |
| z | number |
get(key: string) → void
Resolve one house material by its short key ("gilt", "velvet", "deck", ...).
| arg | type | description |
|---|---|---|
| key | string |
Sub-parts
Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.
Problems
Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.
agent_score is exposed.+ quality × 0.35
+ performance × 0.25
± compat factor
Usability ratings
Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".
Scoped to this part · feeds back into the world's score.