bevy_quick_response

Crates.iobevy_quick_response
lib.rsbevy_quick_response
version0.1.11
sourcesrc
created_at2024-04-18 00:34:28.788742
updated_at2024-04-21 22:11:02.247479
descriptionA Bevy plugin for quick responsive behaviors
homepage
repositoryhttps://github.com/funatsufumiya/bevy_quick_response
max_upload_size
id1211948
size117,177
Fumiya Funatsu (funatsufumiya)

documentation

README

bevy_quick_response

Crates.io Docs.rs License

(README japanese: README_ja.md)

A Bevy plugin, which changes the initial settings to respond immediately to user input.

The normal behavior of Bevy is to turn on VSync, which causes a delay of 3 frames. On the other hand, turning off VSync removes the FPS limit and increases the load on the CPU/GPU.

This plugin changes the settings to turn off VSync to improve responsiveness while behaving as close as possible to when VSync is on. (By default, the base FPS is set to 60 and the maximum FPS is set to 120.)

Usage

app.add_plugins(QuickResponsePlugin::default())

(DefaultPlugin is automatically enabled, so no need to add it.)

Customizing the behavior, see examples/advanced.rs.

Version table

Bevy bevy_quick_response
0.13 0.1

What this plugin does

  • By default, Mailbox (Fast VSync) is selected for Windows/Linux (DX11/DX12, Vulkan), and AutoNoVsync is selected for macOS (Metal) and others.
  • The base FPS is set to 60, and the maximum FPS is set to 120.

Notes

  • Currently, there is no mode provided from Bevy Engine that corresponds to Fast VSync on Mac, so there may be flickering, but the tuning is fine in the author's verification environment (M1/M2). (The reason why the maximum FPS is set to 120 is for that adjustment.)

TODOs

  • Update window settings after added DefaultPlugin by other settings except this plugin.
Commit count: 16

cargo fmt