{"params":{"colorway":{"type":"choice","default":"primary-set","label":"Colorway","describe":"Curated kit-coherent scheme; changes no geometry. primary-set is the approved default \u2014 the school's bright red / yellow / green / blue exercise book covers around cream paper and brown gummed spine tape. sugar-paper is the 1975 end: maroon, manila, bottle green and navy on yellowed stock. poly-bright is the refitted end, the same four hues lifted to printed polypropylene. exam-blue is a single-subject set, four values of blue plus grey. Every scheme keeps the same value ladder: pages lightest, covers mid, spine tape darkest.","options":["primary-set","sugar-paper","poly-bright","exam-blue"]},"era":{"type":"range","default":0.5,"label":"Era (since last refit)","describe":"How long since this school replaced anything: 0 is still running on 1975, 1 was restocked last year. It rebuilds rather than recolours. At 0 the books are heavy 31.5 mm cased volumes \u2014 7.5 mm boards around a 16.5 mm page block, with a 6.5 mm rounded back \u2014 each carrying a band of dark gummed cloth tape down the spine, so the whole pile is 0.19 m tall. The tape is still there at the 0.5 default, where the board is 5.5 mm against an 11 mm block and the pile stands 0.14 m. Above 0.55 the tape goes: the books are perfect-bound with a flat spine, and by 1 they are thin 14 mm stapled jotters with 3.5 mm covers and a square back, standing only 0.09 m. Members are added and removed, so the triangle count moves across the range. The 3 mm cover square that recesses the page block, the 0.21 x 0.148 m book format and the footprint never move.","affects":"geometry","min":0,"max":1,"step":0.05},"term":{"type":"range","default":0.6,"label":"Term (in session)","describe":"Whether the school is in session, spent on disturbance rather than size. At 0 it is the holiday: the pile is squared up almost dead straight, nothing between the books and nothing left sticking out. As it rises the pile twists progressively, up to about 12 degrees of fan from the bottom book to the top one, so the outline steps instead of reading as a prism. From 0.4 a duplicated worksheet is slipped between two fore-edge-out books and pokes out past their fore-edge; from 0.5 the third book is pulled out towards the front; from 0.75 a second sheet appears lower down. The sheets are real geometry, so the count moves. The book left open on top is an identity feature and stays open at every value, including 0.","affects":"geometry","min":0,"max":1,"step":0.05},"books":{"type":"range","default":5,"label":"Books in the pile","describe":"How many CLOSED books are piled up under the open one, so 3 is a thin pile a pupil carries and 10 is a full class set collected in. Books are added on TOP from a fixed table, so the lower books, their colours, their angles and the footprint are identical at every count and only the height changes: 0.10 m at 3, 0.14 m at the approved 5, 0.24 m at 10. The default is deliberately the SQUAT end \u2014 the pile is meant to read half again as wide as it is tall \u2014 and 10 is the tall one. Each book is the same 22 mm slab at every count \u2014 nothing is scaled, books are built.","affects":"geometry","min":3,"max":10,"step":1},"tone":{"type":"range","default":0.35,"label":"Tone variation","describe":"How far each BOOK's cover drifts in lightness from its base colour, as a shelf of assorted books does \u2014 the kit contract names assorted books as one of the few materials that qualifies. It varies whole books, never single faces: a cover is one printed sheet and a face that disagreed with its neighbour would read as bad paintwork. 0 is a boxed set fresh from the stationery cupboard, 0.35 a normal classroom mix, 1 a deliberately jumbled one. Page blocks, spine tape and worksheets are left exactly as painted. Changes no geometry at any value: the triangle, mesh and material counts are identical from 0 to 1.","min":0,"max":1,"step":0.05},"cover1":{"type":"color","default":"#D4483B","label":"Cover red","describe":"Albedo of the first cover colour in the repeating run \u2014 the bottom book of the pile and the notebook lying open on top. Keep it a saturated primary: the covers are this asset's entire share of the kit accent."},"cover2":{"type":"color","default":"#F0B429","label":"Cover yellow","describe":"Albedo of the second cover colour, the lightest of the four. It carries the second and fourth books, so it must stay clearly darker than the page blocks or the stack's banding collapses."},"cover3":{"type":"color","default":"#4E7A3A","label":"Cover green","describe":"Albedo of the third cover colour, on the third and sixth books. The darkest of the four covers at the default; keep it a full value step off the blue or the two merge where they meet."},"cover4":{"type":"color","default":"#2F6F9E","label":"Cover blue","describe":"Albedo of the fourth cover colour, on the fifth book and the top of the pile at higher counts."},"pages":{"type":"color","default":"#F7F4EE","label":"Paper","describe":"Albedo of every page block and of both wings of the open book. This is the lightest zone on the prop and the thing the coloured banding reads against; taking it below the covers in value would kill the stack's stripe."},"band":{"type":"color","default":"#5A3A22","label":"Spine tape","describe":"Albedo of the gummed cloth tape strip down the spine of the older books, present below era 0.55. The darkest zone on the prop \u2014 it wants to stay that way, but never pure black."},"sheet":{"type":"color","default":"#E7EAEC","label":"Worksheet","describe":"Albedo of the duplicated worksheets slipped between the books above term 0.4. A cool grey duplicating paper, deliberately a step off the warm cream of the page blocks so the loose sheet reads as a different piece of paper."}},"presets":{"primary-set":{"cover1":"#D4483B","cover2":"#F0B429","cover3":"#4E7A3A","cover4":"#2F6F9E","pages":"#F7F4EE","band":"#5A3A22","sheet":"#E7EAEC"},"sugar-paper":{"cover1":"#9E4B52","cover2":"#C9B48C","cover3":"#3F5C46","cover4":"#1D3557","pages":"#F1EDE4","band":"#3C4348","sheet":"#DADEE0"},"poly-bright":{"cover1":"#E8703A","cover2":"#F6D65B","cover3":"#8FB36B","cover4":"#4C9AD4","pages":"#F7F4EE","band":"#5F686E","sheet":"#F3F4F5"},"exam-blue":{"cover1":"#1D3557","cover2":"#8FC8E8","cover3":"#2F6F9E","cover4":"#DADEE0","pages":"#F7F4EE","band":"#3A3F45","sheet":"#E7EAEC"}},"decals":[{"name":"open-page","size":[0.09,0.05],"at":[0.048,0.1375,-0.0034],"normal":[0,1,0],"up":[0.99828,0,-0.0586],"describe":"the outboard half of the right-hand page of the book left open on top","albedo":"#f7f4ee","mode":"projected","relief_mm":3.4,"verified":true}],"rev":1792408797,"materials":{"cover1":{"kind":"paper","finish":"glossy"},"cover2":{"kind":"paper","finish":"glossy"},"cover3":{"kind":"paper","finish":"glossy"},"cover4":{"kind":"paper","finish":"glossy"},"pages":{"kind":"paper","finish":"plain"},"band":{"kind":"fabric","finish":"canvas"},"sheet":{"kind":"paper","finish":"plain"}},"materials_note":"what each colour zone is made of: `kind` and `finish` name a procedural PBR material in https://polyfork.dev/materials.mjs (dressByAlbedo finds a zone by its albedo in COLOR_0). A zone not listed has not been classified.","decals_note":"flat areas on the surface where you can print your own logo, sign or number. `at` is the centre in model space, `normal` points out of the surface, `size` is [width, height] in metres. Bake art with https://polyfork.dev/cdn/sdf.mjs and place it with https://polyfork.dev/cdn/decal.mjs, or use `at`/`normal`/`size` directly in any engine. `albedo` is the colour it prints on. mode `plate` means the face is flat and a quad is enough; `projected` means it is curved (`relief_mm` deep) and the mark has to be projected onto the geometry. Measured on the DEFAULT build: a geometry knob can move the surface a few centimetres; decal.mjs follows it, anywhere else re-measure or keep the defaults.","preview_v":1792443880,"mod_v":1792408797}