Files
Verbatim/benchmark_results.json
T
Emil 01a350aebd fix: fire chain reaction — newly ignited cells now have updated_this_tick=true
Root cause: when update_fire ignited a neighbor via grid.set(), the new Fire
cell had updated_this_tick=false. If the dirty rect iteration hadn't reached
that cell yet, it was processed in the same tick, igniting ITS neighbors,
creating exponential spread within a single tick.

Fix: set updated_this_tick=true on all newly created Fire cells so they
wait until the next tick before spreading.

Applied to:
- update_fire: igniting flammable neighbors
- lava_interact: lava igniting wood/grass/flesh
- update_flesh: flesh turning to fire from heat
- update_grass: grass turning to fire from heat
- update_water: water turning to steam from heat
- projectile.rs: fireball impact igniting cells

Result: fire spreads 1 cell per tick (linear, not exponential).
171 FPS avg, p99 14ms — no lag when spamming fireballs.
2026-06-22 16:35:17 +03:00

17 lines
361 B
JSON

{
"mode": "graphics",
"ticks": 600,
"total_time_ms": 3437.1,
"avg_fps": 174.6,
"avg_frame_time_ms": 5.70,
"p99_frame_time_ms": 13.96,
"min_frame_time_ms": 4.45,
"subsystems": {
"ca_step_avg_us": 1259,
"ca_step_p99_us": 8885,
"ca_step_min_us": 670,
"render_avg_us": 3737,
"render_p99_us": 5483,
"render_min_us": 3221
}
}