Add glyph texture atlas for GPU text rendering
Implement a shelf-packing texture atlas in the render crate that packs
rasterized glyph bitmaps into R8 grayscale texture pages. The atlas
provides UV coordinates for each glyph and can generate textured quads
from TextLine data for the Metal rendering pipeline.
- Shelf-packing allocator with configurable page size (default 1024x1024)
- Multi-page support: automatically creates new pages when full
- Dirty tracking for efficient GPU texture uploads
- TexturedQuad generation from TextLine with correct UV mapping
- Integration with existing Font glyph cache for on-demand rasterization
- 19 comprehensive unit tests
Implements issue 3mi4366fkxs2g
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
authored by
tangled.org
96c0139f
c9d8caf6