From a9e4d91f9adca85cc779cb33abfb7f4c9e5a1381 Mon Sep 17 00:00:00 2001 From: Thomas Colliers Date: Sat, 16 Aug 2025 18:13:50 +0200 Subject: [PATCH 1/3] fix: don't lower framerate when window is out of focus --- src/main.rs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index a115a89..0490653 100644 --- a/src/main.rs +++ b/src/main.rs @@ -27,7 +27,7 @@ use bevy::render::settings::{Backends, RenderCreation, WgpuSettings}; use bevy::render::{RenderDebugFlags, RenderPlugin}; use bevy::scene::ScenePlugin; use bevy::window::{CompositeAlphaMode, PresentMode}; -use bevy::winit::{WakeUp, WinitPlugin}; +use bevy::winit::{WakeUp, WinitPlugin, WinitSettings, UpdateMode}; use bevy_dmabuf::import::DmabufImportPlugin; use bevy_mod_openxr::action_set_attaching::OxrActionAttachingPlugin; use bevy_mod_openxr::action_set_syncing::OxrActionSyncingPlugin; @@ -315,10 +315,10 @@ fn bevy_loop( .async_compute .on_thread_spawn = Some(enter_runtime_context.clone()); plugins = plugins.set(task_pool_plugin); - if args.flatscreen + let flatscreenmode = args.flatscreen || std::env::var_os("DISPLAY").is_some_and(|s| !s.is_empty()) || std::env::var_os("WAYLAND_DISPLAY").is_some_and(|s| !s.is_empty()) - { + if flatscreenmode { let mut plugin = WinitPlugin::::default(); plugin.run_on_any_thread = true; plugins = plugins @@ -378,6 +378,14 @@ fn bevy_loop( }), ); + if flatscreenmode { + app.insert_resource(WinitSettings { + focused_mode: UpdateMode::Continuous, + unfocused_mode: UpdateMode::Continuous, + ..Default::default() + }); + } + app.add_plugins(bevy_sk::hand::HandPlugin); // app.add_plugins(HandGizmosPlugin); app.world_mut().resource_mut::().brightness = 1000.0; -- 2.49.1 From d1043f7b8cb23ae76592410ffd0b58f9e6060b6f Mon Sep 17 00:00:00 2001 From: Thomas Colliers Date: Sat, 16 Aug 2025 18:54:31 +0200 Subject: [PATCH 2/3] fix: typo --- src/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index 0490653..86fbb6e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -317,7 +317,7 @@ fn bevy_loop( plugins = plugins.set(task_pool_plugin); let flatscreenmode = args.flatscreen || std::env::var_os("DISPLAY").is_some_and(|s| !s.is_empty()) - || std::env::var_os("WAYLAND_DISPLAY").is_some_and(|s| !s.is_empty()) + || std::env::var_os("WAYLAND_DISPLAY").is_some_and(|s| !s.is_empty()); if flatscreenmode { let mut plugin = WinitPlugin::::default(); plugin.run_on_any_thread = true; -- 2.49.1 From fbf31e1df7089c76aeb3eb4e6d08ddd243776641 Mon Sep 17 00:00:00 2001 From: Thomas Colliers Date: Mon, 18 Aug 2025 18:20:58 +0200 Subject: [PATCH 3/3] Code style --- src/main.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index 86fbb6e..88d8c8e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -379,10 +379,9 @@ fn bevy_loop( ); if flatscreenmode { - app.insert_resource(WinitSettings { + app.insert_resource(WinitSettings { focused_mode: UpdateMode::Continuous, unfocused_mode: UpdateMode::Continuous, - ..Default::default() }); } -- 2.49.1