From 65432ebde4a8ab91ddd4b695a203f09added1853 Mon Sep 17 00:00:00 2001 From: galister <22305755+galister@users.noreply.github.com> Date: Sat, 7 Dec 2024 15:24:22 +0900 Subject: [PATCH] config: add use_passthrough --- src/backend/openxr/mod.rs | 8 ++++++-- src/config.rs | 3 +++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/backend/openxr/mod.rs b/src/backend/openxr/mod.rs index 3a7f900b..96637aeb 100644 --- a/src/backend/openxr/mod.rs +++ b/src/backend/openxr/mod.rs @@ -147,7 +147,9 @@ pub fn openxr_run(running: Arc, show_by_default: bool) -> Result<(), stage_offset: Affine3A::IDENTITY, }; - let mut skybox = if environment_blend_mode == xr::EnvironmentBlendMode::OPAQUE { + let mut skybox = if environment_blend_mode == xr::EnvironmentBlendMode::OPAQUE + || !app_state.session.config.use_passthrough + { create_skybox(&xr_state, &app_state) } else { None @@ -222,7 +224,9 @@ pub fn openxr_run(running: Arc, show_by_default: bool) -> Result<(), if main_session_visible { log::debug!("Destroying skybox."); skybox = None; - } else if environment_blend_mode == xr::EnvironmentBlendMode::OPAQUE { + } else if environment_blend_mode == xr::EnvironmentBlendMode::OPAQUE + || !app_state.session.config.use_passthrough + { log::debug!("Allocating skybox."); skybox = create_skybox(&xr_state, &app_state); } diff --git a/src/config.rs b/src/config.rs index 39debfbd..07b4bd62 100644 --- a/src/config.rs +++ b/src/config.rs @@ -287,6 +287,9 @@ pub struct GeneralConfig { #[serde(default = "def_true")] pub use_skybox: bool, + #[serde(default = "def_true")] + pub use_passthrough: bool, + #[serde(default = "def_max_height")] pub screen_max_height: u16,