Optimize wall/fog rendering
This commit is contained in:
@@ -129,7 +129,9 @@ Both systems independently iterate `get_nodes_in_group("units")`, hook `node_add
|
||||
|
||||
---
|
||||
|
||||
### J. Sprite spam in `FogRenderer` and `WallRenderer`
|
||||
### J. Sprite spam in `FogRenderer` and `WallRenderer` — **Resolved 2026-04-07**
|
||||
|
||||
Both renderers now override `_draw()` and use `draw_texture_rect_region()` directly. Zero child sprites; layout changes call `queue_redraw()` instead of thrashing the scene tree. Findings **O** (redundant `match` arms) and **P** (undocumented `FOG_RECT`) were folded into the same change.
|
||||
|
||||
**Files:** `nodes/fog_renderer.gd:13-43`, `nodes/wall_renderer.gd:44-176`
|
||||
|
||||
@@ -254,7 +256,7 @@ Findings 2 and 9 from the prior review are the largest gameplay gap. Until that
|
||||
| G | `remove_unit` leaks signal connections | Medium | Small |
|
||||
| H | Dead `process_combat` | Medium | Trivial |
|
||||
| I | O(n) unit lookup | Medium | Small |
|
||||
| J | Sprite-per-tile renderers | Medium | Medium |
|
||||
| J | Sprite-per-tile renderers | ~~Medium~~ | **Done** |
|
||||
| K | `MapLayout.initialize` not guarded | Medium | Small |
|
||||
| L | Highlight updates while modal open | Medium | Trivial |
|
||||
| M | Inline scripts in `unit.tscn` | Medium | Small |
|
||||
|
||||
Reference in New Issue
Block a user