C Specification
The XrEventDataReferenceSpaceChangePending event is sent to the application to notify it that the origin (and perhaps the bounds) of a reference space is changing. This may occur due to the user recentering the space explicitly, or the runtime otherwise switching to a different space definition.
The reference space change must only take effect for xrLocateSpace or xrLocateViews calls whose XrTime parameter is greater than or equal to the changeTime
provided in that event. Runtimes should provide a changeTime
to apps that allows for a deep render pipeline to present frames that are already in flight using the previous definition of the space. Runtimes should choose a changeTime
that is midway between the displayTime
of future frames to avoid threshold issues with apps that calculate future frame times using displayPeriod
.
The pose
provided here must only describe the change in the natural origin of the reference space and must not incorporate any origin offsets specified by the app during calls to xrCreateReferenceSpace. If the runtime does not know the relationship between the new and the previous space, poseValid
must be false, and the position and orientation of the pose
are undefined.
typedef struct XrEventDataReferenceSpaceChangePending {
XrStructureType type;
const void* XR_MAY_ALIAS next;
XrReferenceSpaceType referenceSpaceType;
XrTime changeTime;
XrBool32 poseValid;
XrPosef poseInPreviousSpace;
} XrEventDataReferenceSpaceChangePending;
Members
Description
See Also
UNKNOWN:XR_REFERENCE_SPACE_TYPE_STAGE, XrBool32, XrPosef, XrReferenceSpaceType, XrStructureType, XrTime, xrCreateReferenceSpace
Document Notes
For more information, see the OpenXR Specification at URL
This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.
Copyright
Copyright (c) 2014-2019 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.