Implement tiered pathfinding with thread-local scratchpads
- TIER0 (<10 tiles): Vec-based linear search, zero hash overhead - TIER1 (10-30 tiles): FxHashMap scratchpad with memory reuse - TIER2 (30-100 tiles): AHashMap scratchpad for better collision resistance - TIER3 (>100 tiles): Chunk waypoint decomposition - Added benchmarking infrastructure with F8 report trigger - Added async infrastructure: PendingPath, CompletedPaths resources - Lowered MAX_NODES to 5000 to prevent runaway searches Benchmarks show P50 improved 13%, max improved 53%
This commit is contained in:
Generated
+8
@@ -2331,10 +2331,12 @@ dependencies = [
|
||||
name = "dorf"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"ahash",
|
||||
"bevy",
|
||||
"bevy_platform",
|
||||
"bevy_rand",
|
||||
"image",
|
||||
"nohash-hasher",
|
||||
"noise",
|
||||
"rand 0.10.0",
|
||||
"rayon",
|
||||
@@ -3567,6 +3569,12 @@ dependencies = [
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nohash-hasher"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451"
|
||||
|
||||
[[package]]
|
||||
name = "noise"
|
||||
version = "0.9.0"
|
||||
|
||||
Reference in New Issue
Block a user