summaryrefslogtreecommitdiffstats
path: root/modules/openxr/openxr_api.h
diff options
context:
space:
mode:
Diffstat (limited to 'modules/openxr/openxr_api.h')
-rw-r--r--modules/openxr/openxr_api.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/modules/openxr/openxr_api.h b/modules/openxr/openxr_api.h
index 5e5a3d4663..d39e6e0b2e 100644
--- a/modules/openxr/openxr_api.h
+++ b/modules/openxr/openxr_api.h
@@ -104,8 +104,10 @@ private:
// blend mode
XrEnvironmentBlendMode environment_blend_mode = XR_ENVIRONMENT_BLEND_MODE_OPAQUE;
+ XrEnvironmentBlendMode requested_environment_blend_mode = XR_ENVIRONMENT_BLEND_MODE_OPAQUE;
uint32_t num_supported_environment_blend_modes = 0;
XrEnvironmentBlendMode *supported_environment_blend_modes = nullptr;
+ bool emulate_environment_blend_mode_alpha_blend = false;
// state
XrInstance instance = XR_NULL_HANDLE;
@@ -429,7 +431,16 @@ public:
const XrEnvironmentBlendMode *get_supported_environment_blend_modes(uint32_t &count);
bool is_environment_blend_mode_supported(XrEnvironmentBlendMode p_blend_mode) const;
bool set_environment_blend_mode(XrEnvironmentBlendMode p_blend_mode);
- XrEnvironmentBlendMode get_environment_blend_mode() const { return environment_blend_mode; }
+ XrEnvironmentBlendMode get_environment_blend_mode() const { return requested_environment_blend_mode; }
+
+ enum OpenXRAlphaBlendModeSupport {
+ OPENXR_ALPHA_BLEND_MODE_SUPPORT_NONE = 0,
+ OPENXR_ALPHA_BLEND_MODE_SUPPORT_REAL = 1,
+ OPENXR_ALPHA_BLEND_MODE_SUPPORT_EMULATING = 2,
+ };
+
+ void set_emulate_environment_blend_mode_alpha_blend(bool p_enabled);
+ OpenXRAlphaBlendModeSupport is_environment_blend_mode_alpha_blend_supported();
OpenXRAPI();
~OpenXRAPI();