Files
dorf/assets
popertots f9a74ed432 feat: migrate quilter rendering to Bevy TilemapChunk
Replaces the CPU pixel-baking quilter system (QuiltCache, TerrainSprite,
pixel_buffers) with Bevy's native TilemapChunk GPU-index-lookup API.

Architecture:
- TilemapChunk entities replace TerrainSprite entities per (chunk, z, layer)
- Tileset PNG stacked vertically as texture_2d_array (11 rows: 6 floor + 5 fixture)
- populate_chunk_tiles reads TileMap HashMap directly; no ECS FloorTile entities
- Chunk spawn deferred to apply_terrain_blobs (after TileMap data exists)
- Dirty key system triggers repopulate on occlusion/camera-z changes

Bug fixes:
- populate_chunk_tiles: add chunk_pos offset to world tile lookups (was always (0,0))
- spawn_tilemap_chunks: offset Transform by -TILE_SIZE/2 (tile-centre vs bottom-left)
- spawn_tilemap_chunks: AlphaMode2d::Blend (was Opaque, blocking DF fade)
- update_tilemap_chunk_visibility: actually mutate Visibility (was read-only)
- handle_tile_occlusion_updates: mark dirty keys inline (was double-reading events)
- TilemapChunkSpawner: deduplicate pending queue and guard stale registry

Performance:
- ~115K FloorTile ECS entities eliminated
- GPU memory: O(tile_data) instead of O(CHUNK_TILES² × z_levels × pixel_bytes)
- Z-scroll: only TilemapChunkTileData repopulates (no entity re-spawn)
- Benchmarks via TilemapBenchmark resource (F9 to report)
2026-03-20 14:02:04 +00:00
..
2025-01-07 21:35:44 +00:00
art
2025-01-13 21:02:55 +00:00
2024-12-18 00:38:25 +00:00
2024-12-29 00:45:07 +00:00
2024-12-29 00:45:07 +00:00
2024-12-12 17:19:59 +00:00
2024-12-12 17:19:59 +00:00
2025-09-12 18:04:03 +01:00
2024-12-30 22:19:25 +00:00
2024-12-13 23:07:08 +00:00
Art
2025-09-10 18:11:01 +01:00
2025-02-08 00:23:49 +00:00
2024-12-29 00:45:07 +00:00
2024-12-29 00:45:07 +00:00
Art
2025-09-10 18:11:01 +01:00
art
2025-01-13 21:02:55 +00:00
2025-01-07 21:35:44 +00:00
2024-12-12 17:19:59 +00:00
2024-12-29 00:45:07 +00:00
2024-12-29 00:45:07 +00:00
2025-05-23 17:09:58 +01:00
2025-05-11 22:58:25 +01:00
2025-09-10 20:03:29 +01:00
Art
2025-09-10 18:11:01 +01:00
2025-09-14 19:04:34 +01:00
2024-12-29 00:45:07 +00:00
2024-12-29 00:45:07 +00:00
2025-01-25 16:54:27 +00:00
2024-12-30 22:19:25 +00:00
2025-05-05 23:09:28 +01:00