branchrust_reboot/main/procgen_optimcancel

12 Commits over 30 Days - 0.02cph!

11 Days Ago
merge from main
15 Days Ago
short test to force the extremes of DecorComponents to ensure the bounds is correct with future changes - if this broke silently rocks would just fail to spawn or spawn where they shouldn't
15 Days Ago
cleanup
15 Days Ago
merge from main
16 Days Ago
use expanded decor component bounds to early out terrain filters cheaply in decor placement - saves 12s in coastal rocks, barely saves elsewhere - can only do this because we have a cheaper hierarchal query for topology of an area now
16 Days Ago
Process cliff uniform placement validity in parallel - takes another 29s off, still matching results before optims - pivot filters are tested in large batches of all candidates and re-tested if dirtied - per-candidate orientation checks are done in parallel for passing candidates
16 Days Ago
made costal cliffs take 2s instead of 34s by adding caching to the recursive search (maxed around 400KB memory at max) - falls back to recursive if the cache misses
16 Days Ago
improved monument placement - 13s faster - split tier check out to early exit as a first check and water check to run at the end - let distance checks exit early on the first monument it finds that's too close, reject behaviour is the same
16 Days Ago
replaced topology query job with direct call into burst compiled code via blittable UnsafeList<T>, the tiny job runbyref overhead adds up with the amount of queries we make - shaves another 22s off, which is ridiculous
17 Days Ago
merge from erosion_optim - ~22s faster on a 4000 map, overall savings now ~67s or ~18%
17 Days Ago
removed repeated check of 0 orientation on cliff placement where we'd check it on both sign flips across X and Z - cuts an additional 19.1s with matching results
17 Days Ago
hierarchal topology map - saved ~19.5s locally on a 4k procgen, identical results