Commit Graph
18 Commits
Author SHA1 Message Date
Stone_Red 9dfbf06ec3 Code cleanup 2026-05-05 19:46:12 +02:00
Stone_Red ceadce08bb Set default brush mode to Obstacle instead of Weight in grid game 2026-05-05 19:44:55 +02:00
Stone_Red c755df7a16 Fix graph update logic 2026-05-05 19:41:47 +02:00
Stone_Red 8181cde647 Batch agent path calculation for improved performance 2026-05-05 18:02:19 +02:00
Stone_Red 5730248a3a Reset gridChanged before updating graph for affected zones 2026-05-05 17:59:00 +02:00
Stone_RedandCopilot 5cf361ceae Fix IncrementalUpdateGraph affected zone bug
Fixed issue where affected zones contained too many zones on simple changes. The bug occurred in two places:

1. **GridFiller*WithAffected methods**: Now properly track zones that were added, removed, or had their rectangles modified using SymmetricExceptWith and comparing rectangle geometries. This prevents returning all zones when only a few actually changed.

2. **IncrementalUpdateGraph**: Was not clearing adjacencies FROM non-affected zones TO affected zones, causing stale adjacencies to persist. Now removes all references from other zones to affected zones before recalculating, ensuring a clean slate for adjacency recalculation.

Testing with ValidateIncrementalUpdates confirms that incremental updates now match full rebuilds exactly.

Co-authored-by: Copilot <[email protected]>
2026-05-05 15:29:50 +02:00
Stone_Red 30613fddba Add incremental graph update support and benchmarks to GridFiller/Pathfinder 2026-05-05 14:46:18 +02:00
Stone_Red 2216bac568 Remove FunctionalTests and add advanced benchmarks, tests for GridFiller and optimize GridFiller 2026-05-05 12:06:56 +02:00
Stone_Red a27346b81c Add GridFillerBench project with functional tests and BenchmarkDotNet benchmarks 2026-05-05 11:34:34 +02:00
Stone_Red 2306b6e9f5 Change saturation of zone rectangles and outline weighted cells when zones visible 2026-05-05 02:49:35 +02:00
Stone_Red ab45029623 Optimize path drawing by caching bounds and improving visibility checks 2026-05-05 02:23:22 +02:00
Stone_Red 8b604070ee Add Shift+Click area fill for brush tools and allow batch tile operations 2026-05-05 02:07:13 +02:00
Stone_Red 7ce2b5436f Add batch processing for tile and obstacle operations 2026-05-05 01:28:33 +02:00
Stone_Red 1b79459b36 Add thread safety and optimize grid obstacle, weight, and recalculation logic 2026-05-05 01:28:21 +02:00
Stone_Red cd9718d61c Support weighted path finding 2026-05-05 01:16:29 +02:00
Stone_Red 19cb21ece2 Turn off path randomization and penalize stretched rectangles 2025-02-14 18:01:40 +01:00
Stone_Red a4d5cef869 Fix progress tracker do not remove property 2025-02-14 18:00:57 +01:00
Stone_Red 8992447323 Initial commit 2025-02-14 01:17:55 +01:00