Capability | Description | Parameters | Value type | Parameter definitions |
---|---|---|---|---|
Create a XR System | An application can create a XR System from an XR Runtime. | xrSystemIdentifier | integer | Identifier of a given XR System exposed by a XR Runtime. |
Query XR System's graphics properties | An application can query an XR System about its graphics capabilities. | swapchainSupported | boolean | Indicates whether the XR System supports the swapchains. |
maxSwapchainImageHeight | integer | The maximum swapchain image pixel height supported by this XR system. | ||
maxSwapchainImageWidth | integer | The maximum swapchain image pixel height supported by this XR system. | ||
maxLayerCount | integer | The maximum number of composition layers supported by this XR system | ||
Query XR System's tracking properties | An application can query an XR System on the tracking capabilities. | orientationTracking | boolean | Indicates whether the XR System supports orientational tracking of the view pose(s), or not. |
positionTracking | boolean | Indicates whether the XR system supports positional tracking of the view pose(s), | ||
Enumerate XR System's supported environment blend modes | An application can query an XR System about its supported environment blend modes, see clause [xxx]. | blendMode | ['opaque', 'additive', 'alpha_blend'] | Indicates the type of blend mode supported by the XR System. The value 'opaque' relates to the opaque blend mode, the value 'additive' to the additive blend mode and 'alpha_blend' to the alpha blend mode. |
Enumerate supported view configuration types | An application can query an XR System about the its supported primary view configurations. | viewConfigurationPrimary | ['monoscopic', 'stereoscopic', 'other'] | Indicates the type of primary view configuration of the XR System. The value 'monoscopic' relates to a single view, the value 'stereoscopic' to the left and right-eye views and 'other' to a type undefined in the scope of this specification. |
Enumerate the view configuration properties | An application can list the properties associated with different view configurations advertised by an XR System. | recommendedImageRectWidth | integer | The optimal width of imageRect to use when rendering this view into a swapchain. |
maxImageRectWidth | integer | The maximum width of imageRect supported when rendering this view into a swapchain. | ||
recommendedImageRectHeight | integer | The optimal height of imageRect to use when rendering this view into a swapchain | ||
maxImageRectHeight | integer | The maximum height of imageRect supported when rendering this view into a swapchain. | ||
recommendedSwapchainSampleCount | integer | The recommended number of sub-data element samples to create for each swapchain image that will be rendered into for this view. | ||
maxSwapchainSampleCount | integer | The maximum number of sub-data element samples supported for swapchain images that will be rendered into for this view. | ||
Enumerate reference space types | An application can query an XR System about the supported reference space types, described in [xxx]. | referenceSpaceView | ['view', 'local', 'stage', 'unbounded', 'user_defined'] | Indicates the type of reference spaces supported by the XR System. The value 'view' relates to view reference space, the value 'local' to the local reference space, the value 'stage' to the stage reference space, the value 'unbounded'. |
Query the spatial range boundaries | An application can query the spatial ranges in which an XR experience may be rendered. | 2DSpatialRangeBoundaries | rectangle | Provides the rectangle centered on the origin of a given reference space in which the user can freely move. |
Enumerate swapchain image formats | An application can query the swapchain image formats supported by an XR System. | swapchainImageFormatIdentifier | enumeration | Provides an identifier of a swapchain image format that the XR System supports. |
Enumerate swapchain images | An application can list the swapchain images allocated to a swapchain. | numberSwapchainImages | enumeration | Provides the number of images allocated for a given swapchain. |
swapchainImages | object | Provide the implementation-specific swapchain image objects for a given swapchain. | ||
Enumerate composition layer type | An application can list the composition layer types supported by an XR System. | compositionLayerProjection | ['projection', 'quad', 'cylinder', 'cube', 'equirectangular', 'depth'] | Indicates the type of composition layers supported by the XR Systems supports. The value 'projection' represents planar projected images, one rendered for each eye using a perspective projection. The value 'quad' represents quad composition layers which are useful for rendering user interface elements or 2D content on a planar area in the world. The value 'cylinder' represents cylinder composition layers which maps the texture onto the inside of a cylinder section. The value 'cube' represents cube composition layer which consists of a cube map with six views to be rendered by the application. The value 'equirectangular' represents equirectangular composition layers which consists of an equirectangular image that is mapped onto the inside of a sphere in the world. The value 'depth' represents depth composition layers which allows submitting depth maps as an extra composition layer to be used by the XR Runtime for pose correction. |