C Specification
// Flag bits for XrFrameSynthesisInfoFlagsEXT
static const XrFrameSynthesisInfoFlagsEXT XR_FRAME_SYNTHESIS_INFO_USE_2D_MOTION_VECTOR_BIT_EXT = 0x00000001;
static const XrFrameSynthesisInfoFlagsEXT XR_FRAME_SYNTHESIS_INFO_REQUEST_RELAXED_FRAME_INTERVAL_BIT_EXT = 0x00000002;
Description
By default, 3D motion vector data is expected by the runtime, so motionVectorSubImagergb, motionVectorScalexyz and motionVectorOffsetxyz are used, as described in XrFrameSynthesisInfoEXT.
When XR_FRAME_SYNTHESIS_INFO_USE_2D_MOTION_VECTOR_BIT_EXT is enabled
on XrFrameSynthesisInfoEXT layerFlags, the runtime instead
interprets the submitted motion vector image as 2D motion vector data,
representing 2D pixel movement from the previous frame to the current frame.
Pixels values are interpreted as follows for 2D motion vector data:
motionVector = motionVectorSubImagerg * motionVectorScalexy +
motionVectorOffsetxy.
The components motionVectorSubImageba, motionVectorScalezw
and motionVectorOffsetzw are ignored.
Using 2D instead of 3D motion vector data may decrease the quality of the
synthesized frames.
See Also
Document Notes
For more information, see the OpenXR Specification
This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.
Copyright
Copyright 2014-2025 The Khronos Group Inc.
This work is licensed under a Creative Commons Attribution 4.0 International License.