render/paper_ink/paper_grain library
Paper & ink's textures: the paper grain tile (flecks, fibres, chalk dust) shared by the sheet, every key slip and the display card, and the sheet's line tiles (ruled, graph, dot grid).
Each tile is built once with toImageSync and kept for the life of the
app (it is constant for the family: colour-independent, so it lerps
with the theme without rebuilds), outside the shared
BackgroundCache LRU, where a Glass ↔ Paper swipe would evict and
rebuild it mid-transition.
The grain is hash-seeded (never Random), and every primitive is drawn
with BlendMode.src, so a texel holds only its last primitive: no
black texel is darker than 20 % and no white texel lighter than 14 %
(scaled by the sheet's grain strength at paint time) — the ceilings the
guardrail samples assume (paperInkSceneSamples).
Classes
- PaperTextures
- The shared textures.