Expand description
A design as it is held while it is shown: its scene, how many nodes use each of its files, and its drawing in each theme a caller asks for — every one brought along by each change to the scene, the damage it does to their tiles kept until it is taken. It answers what a canvas or a PNG asks of a drawing: its size, the interaction at a point, the tiles a view needs, and an area to paint — rounded first where an update left a run’s children a fraction of a pixel off, so what is painted there is a fresh drawing’s.
One rule for a scene that can’t be drawn — its images too many for
the GPU’s atlas. The design keeps showing its last good drawing in that
theme: the drawing of the last scene that could be drawn, made afresh the
moment the scene stopped being drawable, which every tile, size and
click is answered from meanwhile — a tile no one painted before, after a
pan or a zoom, too — and which no damage reaches; why is
Design::problem. The drawing that follows the scene is kept beside
it, so the next change updates it at the change’s cost, and the change
that makes the scene drawable again damages every tile of that theme.
It holds no renderer — a server shares one between its designs, a canvas has its own — and has no mode: the browser draws the theme it shows when it is shown, the server every theme the design has, at once.
Structs§
- Design
- A design’s scene — its one copy — the files it uses, and its drawing in each theme it was asked to draw in.