Highlights
- Batched hatch rendering (Phase 4-B). Every hatch in the frame is uploaded into a shared set of GPU storage buffers and drawn in a single indexed
drawcall. The previous path issued oneset_bind_group+ oneset_vertex_buffer+ one draw call per hatch — on a 1000-hatch drawing that's ~1000 GPU command-buffer submissions replaced with 1, plus a per-instance visibility buffer that the vertex shader honours so off-screen / sub-pixel hatches still skip the fragment stage.
Performance
- pipeline: batched-hatch GPU resources + builder (fe202f5)
- pipeline: batched-hatch WGSL shader (60c742e)
- pipeline: wire batched-hatch pipeline + single draw call (3593e9d)
- pipeline: per-instance visibility for batched hatches (398eee5)
- pipeline: drop legacy per-hatch path after batched soak (798a391)
Fixes
- pipeline: batched-hatch pattern math (QCAD PAT local-frame convention) + invisible-instance clip position (cfe53bd)
Docs
- rendering: mark Phase 4 done, drop deferred / non-goal phases (66fca6e)
Full Changelog: v0.3.1...v0.3.2