userJakbcancel
branchrust_reboot/main/procgen_visualiser/generation_optimisationscancel

4 Commits over 0 Days - Infinitycph!

20 Days Ago
Prefab filters can now check topology in radius using generated distance transform fields of Chebyshev distance to the nearest texel of that topology. Effectively a per-stage cache of distance from topologies to avoid walking texels. - Built in two-pass Burst - Built per-stage only when a stage has asked about a bit 100k times to make the building worth it. Bits written mid-stage fall back to the existing texel scan (decor that writes topology as it is placed) - TerrainTopologyMap.GetTopology picks fields or the existing texel scan New tests compared with previous baseline show 8-12s saved (Cliffs Hills & Cliffs Hills Small) depending on the seed. Roughly 3% time savings across the entire generation. Radius scans per run dropped from 8.76 billion -> 2.12 billion. Prefab placement is slightly stricter as fields check a full square of texels whereas the scan clipped corners at radii of 1 or 2 texels. Recorded a 1.6% reduction cliff hills small placements (0.7% of all prefabs)
21 Days Ago
Replace powershell nonsense with Unity editor window, similar to ProcgenReplay. Updated procgen benchmark to create durable version controlled results (we could probably further automate and grafana this at a later date). Ran a baseline test over 2 repeats of 5 size 3250 seeds (10 runs total), median 205.9s generation time (per-stage breakdown in the CSV).
21 Days Ago
Added a per-stage benchmark measurement harness before moving onto experimental optimisations. To be used to measure future improvements and map changes. - ProcgenStats: time per-stage, number of prefabs placed, placement hash, counters (filter calls, radius scans, texel reads, anchor scans, monument attempts). - ProcgenBenchmark: editor tooling to generate maps for queued seeds and writes a CSV row per-stage. One map per play session, exiting play mode after each generation. - Powershell scripts to drive the editor benchmarks and compare CSV outputs by hash and stage time
21 Days Ago
merge from procgen_visualiser