The open source OpenXR runtime
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

st/oxr: Expose unbounded if extension enabled and space is supported

+18 -2
+10
src/xrt/state_trackers/oxr/oxr_api_space.c
··· 54 54 log, XR_ERROR_VALIDATION_FAILURE, 55 55 "(%s == XR_REFERENCE_SPACE_TYPE_LOCAL_FLOOR_EXT) is only valid if XR_EXT_local_floor is enabled", 56 56 field_name); 57 + case XR_REFERENCE_SPACE_TYPE_UNBOUNDED_MSFT: 58 + #ifdef OXR_HAVE_MSFT_unbounded_reference_space 59 + if (sys->inst->extensions.MSFT_unbounded_reference_space) { 60 + return XR_SUCCESS; 61 + } 62 + #endif 63 + return oxr_error(log, XR_ERROR_VALIDATION_FAILURE, 64 + "(%s == XR_REFERENCE_SPACE_TYPE_UNBOUNDED_MSFT) is only valid if " 65 + "XR_MSFT_unbounded_reference_space is enabled", 66 + field_name); 57 67 default: break; 58 68 } 59 69
+1 -1
src/xrt/state_trackers/oxr/oxr_objects.h
··· 1276 1276 uint32_t blend_mode_count; 1277 1277 XrEnvironmentBlendMode blend_modes[3]; 1278 1278 1279 - XrReferenceSpaceType reference_spaces[4]; 1279 + XrReferenceSpaceType reference_spaces[5]; 1280 1280 uint32_t reference_space_count; 1281 1281 1282 1282 //! Cache of the last known system roles, see @xrt_system_roles::generation_id
+7 -1
src/xrt/state_trackers/oxr/oxr_system.c
··· 194 194 * Reference space support. 195 195 */ 196 196 197 - static_assert(4 <= ARRAY_SIZE(sys->reference_spaces), "Not enough space in array"); 197 + static_assert(5 <= ARRAY_SIZE(sys->reference_spaces), "Not enough space in array"); 198 198 199 199 if (sys->xso->semantic.view != NULL) { 200 200 sys->reference_spaces[sys->reference_space_count++] = XR_REFERENCE_SPACE_TYPE_VIEW; ··· 219 219 if (sys->xso->semantic.stage != NULL) { 220 220 sys->reference_spaces[sys->reference_space_count++] = XR_REFERENCE_SPACE_TYPE_STAGE; 221 221 } 222 + 223 + #ifdef OXR_HAVE_MSFT_unbounded_reference_space 224 + if (sys->inst->extensions.MSFT_unbounded_reference_space && sys->xso->semantic.unbounded != NULL) { 225 + sys->reference_spaces[sys->reference_space_count++] = XR_REFERENCE_SPACE_TYPE_UNBOUNDED_MSFT; 226 + } 227 + #endif 222 228 223 229 224 230 /*