acron.quads¶
A pool of quads in one vertex buffer — particles, sprites, billboards.
The pattern every quad system re-derives: N quads of four vertices in a
single dynamic GeomVertexData with per-quad attribute columns, a static
index list, a per-corner column the vertex shader offsets by (this engine’s
GL context ignores gl_PointSize, so point sprites are camera-facing
quads — RUNTIME rule), and an in-place resize. In place matters: a NEW node
would drop the shader inputs, the set_bin and the shadow-mask hide the
old one carried, which is why resize() reuses the buffer
(set_num_rows + fresh indices) instead of rebuilding the node.
The pool owns the buffer and the node; the caller owns the columns’ meaning
and writes them through view() / quads() / flat() (an
acron.gpu.vertex_view() float32 memoryview — taking it is also
what marks the rows dirty, so take it once per frame you actually write).
|
|
Global Functions