Skip to main content

Module draw

Module draw 

Source
Expand description

The engine’s draw record and its depth counter.

A compiled frame is a flat list of EngineDraws, each naming a paint, a depth, and the half-open range of strips the compiler generated for it. The strips themselves live in one shared StripStorage so a whole frame uploads as a single instance buffer; a draw only borrows its slice of it.

EngineDraw implements Drawable so the recorder can fold each draw’s bounding box into the enclosing layer’s. Per that trait’s contract the caller slices the strips before the call, so bbox measures exactly the strips it is handed rather than re-applying strip_range.

Structs§

DepthCounter
Hands out the monotonically increasing depths a frame’s draws are stamped with.
EngineDraw
One recorded draw: a paint, a depth, and the strips it covers.