mirror of
https://github.com/vladtrc/iw4L
synced 2026-10-26 02:11:39 -04:00
8798519c32
The macOS surface workaround ran before Bevy 0.20 applied the window extraction commands, so the first pipelined frame still created the Metal surface on the render thread and panicked. Applying them first lets pipelining run, and a frame latency of two stops the render thread waiting on the display before every frame; with a latency of one pipelining gains nothing. Apple M4 Pro, mp_rust, 8 bots, bench recorder, 3456x2168 fullscreen: uncapped 95 -> 238 fps (frame p95 12.9 -> 7.0 ms); vsync on 71 fps alternating between 60 and 120 -> steady 120 (p95 20.5 -> 8.7 ms). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>