FPS Capped at Refresh Rate even after changing present mode on mac
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 161
Description
## Bevy version
0.13
## Relevant system information
I'm running MacOS Sonoma, on the latest update, and am using bevy 1.13
```ignore
`AdapterInfo { name: "Apple M2 Pro", vendor: 0, device: 0, device_type: IntegratedGpu, driver: "", driver_info: "", back
end: Metal }`
```
## What you did
I just used a getting started template, and added a frame rate timer, and changed the window's present mode to `AutoNoVsync`
(my code):
```rust
fn main() {
App::new()
.add_plugins(DefaultPlugins.set(WindowPlugin {
primary_window: Some(Window {
present_mode: PresentMode::AutoNoVsync,
..default()
}),
..default()
}))
.add_plugins((LogDiagnosticsPlugin::default(), FrameTimeDiagnosticsPlugin))
.run();
}
```
## What went wrong
Clearly, the FPS shouldn't be capped to my monitor's refresh rate (in this case 60fps), but looking at the logs, the fps hovers around 60 fps. I severely doubt that my computer really can only run it at 60fps.
## Additional information
(Some logs from the frame rate diagnostics plugin)
```ignore
2024-02-24T18:27:31.596562Z INFO bevy diagnostic: fps : 60.277031 (avg 124.856867)
2024-02-24T18:27:31.596616Z INFO bevy diagnostic: frame_time : 16.684984ms (avg 15.759335ms)
2024-02-24T18:27:31.596626Z INFO bevy diagnostic: frame_count: 64.000000 (avg 32.000000)
2024-02-24T18:27:32.595877Z INFO bevy diagnostic: fps : 60.092821 (avg 86.122432)
2024-02-24T18:27:32.595960Z INFO bevy diagnostic: frame_time : 16.645327ms (avg 16.408663ms)
2024-02-24T18:27:32.595979Z INFO bevy diagnostic: frame_count: 124.000000 (avg 64.500000)
```
This seems to not affect everyone, as after asking around, some people on mac are able to run higher than vsync. Not really sure what's causing this.
Contributor guide
Assessment
This issue has not been assessed yet.