McRogueFace/tests
John McCardle 9469c04b01 feat: Implement chunk-based Grid rendering for large grids (closes #123)
Adds a sub-grid system where grids larger than 64x64 cells are automatically
divided into 64x64 chunks, each with its own RenderTexture for incremental
rendering. This significantly improves performance for large grids by:

- Only re-rendering dirty chunks when cells are modified
- Caching rendered chunk textures between frames
- Viewport culling at the chunk level (skip invisible chunks entirely)

Implementation details:
- GridChunk class manages individual 64x64 cell regions with dirty tracking
- ChunkManager organizes chunks and routes cell access appropriately
- UIGrid::at() method transparently routes through chunks for large grids
- UIGrid::render() uses chunk-based blitting for large grids
- Compile-time CHUNK_SIZE (64) and CHUNK_THRESHOLD (64) constants
- Small grids (<= 64x64) continue to use flat storage (no regression)

Benchmark results show ~2x improvement in base layer render time for 100x100
grids (0.45ms -> 0.22ms) due to chunk caching.

Note: Dynamic layers (#147) still use full-grid textures; extending chunk
system to layers is tracked separately as #150.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 22:33:16 -05:00
..
benchmarks feat: Implement chunk-based Grid rendering for large grids (closes #123) 2025-11-28 22:33:16 -05:00
demo fix: Resolve --exec double script execution bug 2025-11-26 13:20:22 -05:00
geometry_demo fix: Refine geometry demos for 1024x768 and fix animations 2025-11-26 04:54:13 -05:00
integration Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
notes feat: Exit on first Python callback exception (closes #133) 2025-11-26 10:26:30 -05:00
regression feat: Implement chunk-based Grid rendering for large grids (closes #123) 2025-11-28 22:33:16 -05:00
unit feat: Add work_time_ms to benchmark logging for load analysis 2025-11-28 16:13:40 -05:00
run_tests.py refactor: comprehensive test suite overhaul and demo system 2025-11-25 23:37:05 -05:00