Safe Haskell | None |
---|---|
Language | Haskell2010 |
Name
XR_MSFT_secondary_view_configuration - instance extension
Specification
See XR_MSFT_secondary_view_configuration in the main specification for complete information.
Registered Extension Number
54
Revision
1
Extension and Version Dependencies
- Requires OpenXR 1.0
See Also
SecondaryViewConfigurationFrameEndInfoMSFT
,
SecondaryViewConfigurationFrameStateMSFT
,
SecondaryViewConfigurationLayerInfoMSFT
,
SecondaryViewConfigurationSessionBeginInfoMSFT
,
SecondaryViewConfigurationStateMSFT
,
SecondaryViewConfigurationSwapchainCreateInfoMSFT
Document Notes
For more information, see the OpenXR Specification
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- data SecondaryViewConfigurationSessionBeginInfoMSFT = SecondaryViewConfigurationSessionBeginInfoMSFT {}
- data SecondaryViewConfigurationStateMSFT = SecondaryViewConfigurationStateMSFT {}
- data SecondaryViewConfigurationFrameStateMSFT = SecondaryViewConfigurationFrameStateMSFT {}
- data SecondaryViewConfigurationFrameEndInfoMSFT = SecondaryViewConfigurationFrameEndInfoMSFT {}
- data SecondaryViewConfigurationLayerInfoMSFT = SecondaryViewConfigurationLayerInfoMSFT {}
- data SecondaryViewConfigurationSwapchainCreateInfoMSFT = SecondaryViewConfigurationSwapchainCreateInfoMSFT {}
- type MSFT_secondary_view_configuration_SPEC_VERSION = 1
- pattern MSFT_secondary_view_configuration_SPEC_VERSION :: forall a. Integral a => a
- type MSFT_SECONDARY_VIEW_CONFIGURATION_EXTENSION_NAME = "XR_MSFT_secondary_view_configuration"
- pattern MSFT_SECONDARY_VIEW_CONFIGURATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
Documentation
data SecondaryViewConfigurationSessionBeginInfoMSFT Source #
XrSecondaryViewConfigurationSessionBeginInfoMSFT - Describes an
extension structure to beginSession
indicating
supported view configuration types.
Member Descriptions
Description
If there are any duplicated view configuration types in the array of
enabledViewConfigurationTypes
, the runtime must return error
ERROR_VALIDATION_FAILURE
.
If there are any primary view configuration types in the array of
enabledViewConfigurationTypes
, the runtime must return error
ERROR_VALIDATION_FAILURE
.
If there are any secondary view configuration types not returned by
enumerateViewConfigurations
in the
array of enabledViewConfigurationTypes
, the runtime must return
error
ERROR_VIEW_CONFIGURATION_TYPE_UNSUPPORTED
.
Valid Usage (Implicit)
-
The @@ extension must be enabled prior to using
SecondaryViewConfigurationSessionBeginInfoMSFT
-
type
must beTYPE_SECONDARY_VIEW_CONFIGURATION_SESSION_BEGIN_INFO_MSFT
-
next
must beNULL
or a valid pointer to the next structure in a structure chain -
enabledViewConfigurationTypes
must be a pointer to an array ofviewConfigurationCount
validViewConfigurationType
values -
The
viewConfigurationCount
parameter must be greater than0
See Also
SecondaryViewConfigurationSessionBeginInfoMSFT | |
|
Instances
data SecondaryViewConfigurationStateMSFT Source #
XrSecondaryViewConfigurationStateMSFT - Returns the state of an enabled secondary view configuration.
Member Descriptions
Description
When a secondary view configuration becomes active, the application
should render its secondary views as soon as possible, by getting
their view transforms and FOV using
locateViews
and then submitting
composition layers to endFrame
through the
SecondaryViewConfigurationFrameEndInfoMSFT
extension structure. When a
secondary view configuration changes from inactive to active, the
runtime may change
ViewConfigurationView
of the given
view configuration such as the recommended image width or height. An
application should query for latest
ViewConfigurationView
through
enumerateViewConfigurationViews
function for the secondary view configuration and consider recreating
swapchain images if necessary. The runtime must not change the
ViewConfigurationView
, including
recommended image width and height of a secondary view configuration
when active
remains true until the secondary view configuration
deactivated or the session has ended.
If necessary, the application can take longer than a frame duration to
prepare by calling endFrame
without
submitting layers for that secondary view configuration until ready. The
runtime should delay the underlying scenario managed by the secondary
view configuration until the application begins submitting frames with
layers for that configuration. The active secondary view configuration
composed output is undefined if the application stops submitting frames
with layers for a secondary view configuration while active
remains
true.
When the runtime intends to conclude a secondary view configuration, for
example when user stops video capture, the runtime makes the view
configuration inactive by setting the corresponding active
in the
SecondaryViewConfigurationStateMSFT
structure to false.
Valid Usage (Implicit)
-
The @@ extension must be enabled prior to using
SecondaryViewConfigurationStateMSFT
-
type
must beTYPE_SECONDARY_VIEW_CONFIGURATION_STATE_MSFT
-
next
must beNULL
or a valid pointer to the next structure in a structure chain -
viewConfigurationType
must be a validViewConfigurationType
value
See Also
https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XrBool32,
FrameState
,
SecondaryViewConfigurationFrameStateMSFT
,
StructureType
,
ViewConfigurationType
SecondaryViewConfigurationStateMSFT | |
|
Instances
data SecondaryViewConfigurationFrameStateMSFT Source #
XrSecondaryViewConfigurationFrameStateMSFT - Extension structure to xrWaitFrame to return a list of secondary view configuration states.
Member Descriptions
Description
The array size viewConfigurationCount
in the
SecondaryViewConfigurationFrameStateMSFT
structure must be the same
as the array size enabled through
SecondaryViewConfigurationSessionBeginInfoMSFT
when calling
beginSession
earlier, otherwise the runtime
must return error
ERROR_VALIDATION_FAILURE
.
Valid Usage (Implicit)
-
The @@ extension must be enabled prior to using
SecondaryViewConfigurationFrameStateMSFT
-
type
must beTYPE_SECONDARY_VIEW_CONFIGURATION_FRAME_STATE_MSFT
-
next
must beNULL
or a valid pointer to the next structure in a structure chain -
viewConfigurationStates
must be a pointer to an array ofviewConfigurationCount
SecondaryViewConfigurationStateMSFT
structures -
The
viewConfigurationCount
parameter must be greater than0
See Also
FrameState
,
SecondaryViewConfigurationStateMSFT
,
StructureType
SecondaryViewConfigurationFrameStateMSFT | |
|
Instances
data SecondaryViewConfigurationFrameEndInfoMSFT Source #
XrSecondaryViewConfigurationFrameEndInfoMSFT - Submit an array of
SecondaryViewConfigurationLayerInfoMSFT
, one for each secondary view
configuration.
Member Descriptions
Description
The view configuration type in each
SecondaryViewConfigurationLayerInfoMSFT
must be one of the view
configurations enabled when calling beginSession
in SecondaryViewConfigurationSessionBeginInfoMSFT
, or else the runtime
must return error
ERROR_SECONDARY_VIEW_CONFIGURATION_TYPE_NOT_ENABLED_MSFT
.
The view configuration type in each
SecondaryViewConfigurationLayerInfoMSFT
must not be the primary view
configuration in this session, or else the runtime must return error
ERROR_LAYER_INVALID
. The primary view
configuration layers continue to be submitted through
FrameEndInfo
directly.
If the view configuration is not active, as indicated in
SecondaryViewConfigurationFrameStateMSFT
, the composition layers
submitted to this view configuration may be ignored by the runtime.
Applications should avoid rendering into secondary views when the view
configuration is inactive.
Valid Usage (Implicit)
-
The @@ extension must be enabled prior to using
SecondaryViewConfigurationFrameEndInfoMSFT
-
type
must beTYPE_SECONDARY_VIEW_CONFIGURATION_FRAME_END_INFO_MSFT
-
next
must beNULL
or a valid pointer to the next structure in a structure chain -
viewConfigurationLayersInfo
must be a pointer to an array ofviewConfigurationCount
validSecondaryViewConfigurationLayerInfoMSFT
structures -
The
viewConfigurationCount
parameter must be greater than0
See Also
SecondaryViewConfigurationLayerInfoMSFT
,
StructureType
,
endFrame
SecondaryViewConfigurationFrameEndInfoMSFT | |
|
Instances
data SecondaryViewConfigurationLayerInfoMSFT Source #
XrSecondaryViewConfigurationLayerInfoMSFT - Describe an array of
composition layers to be submitted to given
ViewConfigurationType
.
Member Descriptions
Description
This structure is similar to the
FrameEndInfo
structure, with an extra
ViewConfigurationType
field
to specify the view configuration for which the submitted layers will be
rendered.
The application should render its content for both the primary and
secondary view configurations using the same predictedDisplayTime
reported by waitFrame
. The runtime must
treat both the primary views and secondary views as being submitted for
the same displayTime
specified in the call to
endFrame
.
For layers such as quad layers whose content is identical across view
configurations, the application can submit the same
CompositionLayerBaseHeader
structures to
multiple view configurations in the same
endFrame
function call.
For each frame, the application should only render and submit layers
for the secondary view configurations that were active that frame, as
indicated in the SecondaryViewConfigurationFrameStateMSFT
filled in
for that frame’s waitFrame
call. The
runtime must ignore composition layers submitted for an inactive view
configuration.
Valid Usage (Implicit)
-
The @@ extension must be enabled prior to using
SecondaryViewConfigurationLayerInfoMSFT
-
type
must beTYPE_SECONDARY_VIEW_CONFIGURATION_LAYER_INFO_MSFT
-
next
must beNULL
or a valid pointer to the next structure in a structure chain -
viewConfigurationType
must be a validViewConfigurationType
value -
environmentBlendMode
must be a validEnvironmentBlendMode
value -
layers
must be a pointer to an array oflayerCount
validCompositionLayerBaseHeader
-based structures. See also:CompositionLayerCubeKHR
,CompositionLayerCylinderKHR
,CompositionLayerEquirect2KHR
,CompositionLayerEquirectKHR
,CompositionLayerProjection
,CompositionLayerQuad
-
The
layerCount
parameter must be greater than0
See Also
CompositionLayerBaseHeader
,
EnvironmentBlendMode
,
SecondaryViewConfigurationFrameEndInfoMSFT
,
StructureType
,
ViewConfigurationType
,
endFrame
SecondaryViewConfigurationLayerInfoMSFT | |
|
Instances
data SecondaryViewConfigurationSwapchainCreateInfoMSFT Source #
XrSecondaryViewConfigurationSwapchainCreateInfoMSFT - Hint to runtime that the created swapchain image will be used for given secondary view configuration.
Member Descriptions
Description
If this structure is not present in the
SwapchainCreateInfo
next chain when calling
createSwapchain
, the runtime should optimize the
created swapchain for the primary view configuration of the session.
If the application submits a swapchain image created with one view configuration type to a composition layer for another view configuration, the runtime may need to copy the resource across view configurations. However, the runtime must correctly compose the image regardless which view configuration type was hinted when swapchain image was created.
Valid Usage (Implicit)
-
The @@ extension must be enabled prior to using
SecondaryViewConfigurationSwapchainCreateInfoMSFT
-
type
must beTYPE_SECONDARY_VIEW_CONFIGURATION_SWAPCHAIN_CREATE_INFO_MSFT
-
next
must beNULL
or a valid pointer to the next structure in a structure chain -
viewConfigurationType
must be a validViewConfigurationType
value
See Also
SecondaryViewConfigurationSwapchainCreateInfoMSFT | |
|
Instances
pattern MSFT_secondary_view_configuration_SPEC_VERSION :: forall a. Integral a => a Source #
type MSFT_SECONDARY_VIEW_CONFIGURATION_EXTENSION_NAME = "XR_MSFT_secondary_view_configuration" Source #
pattern MSFT_SECONDARY_VIEW_CONFIGURATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #