Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


XRDisplaySubsystem

An XRDisplaySubsystem controls rendering to a head tracked display.
Read time 4 minutesLast updated 2 days ago

Definition

public class XRDisplaySubsystem : IntegratedSubsystem<XRDisplaySubsystemDescriptor>, ISubsystem

Properties

Property

Description

appliedViewportScaleThe portion of the allocated display texture used by the active stereo device for the current frame.
contentProtectionEnabledSets or gets the state of content protection for the current active provider.
disableLegacyRendererDisables the legacy renderer while this XRDisplaySubsystem is active.
displayOpaqueDetermines if the current attached device has an opaque display.
foveatedRenderingFlagsControls optional behavior of the foveated rendering system.
foveatedRenderingLevelControls the intensity of the foveated rendering system.
hdrOutputSettingsThe HDROutputSettings for the XR Display Subsystem.
occlusionMaskScaleA scale applied to the standard occulsion mask.
reprojectionModeThe kind of reprojection the app requests to stabilize its holographic rendering relative to the user's head motion.
scaleOfAllRenderTargetsControls the size of the textures submitted to the display as a multiplier of the display's default resolution.
scaleOfAllViewportsControls how much of the allocated display texture should be used for rendering.
supportedTextureLayoutsSpecifies all texture layouts supported by this display subsystem. This var is a bit field that could be combination of XRDisplaySubsystem.TextureLayout.
textureLayoutSet DisplaySubsystem to use certain texture layout. Should query supported texture layout through supportedTextureLayouts first for the capabilities.
zFarSet DisplaySubsystem to use zFar for rendering.
zNearSet DisplaySubsystem to use zNear for rendering.

Methods

Method

Description

AddGraphicsThreadMirrorViewBlitThis function records the display subsystem's native blit event to the target command buffer. This function is typically called by a scriptable rendering pipeline.
BeginRecordingIfLateLatchedThis function enables late latching recording of constant buffer memory locations which are later patched with the latest pose data.
EndRecordingIfLateLatchedThis function disables late latching recording of constant buffer locations.
GetCullingParametersGets culling parameters for a specific culling pass index.
GetMirrorViewBlitDescGet a mirror view blit operation descriptor from the current display subsystem.
GetPreferredMirrorBlitModeReturns the XR display's preferred mirror blit mode.
GetRenderPassGets an XRDisplaySubsystem.XRRenderPass of a specific index.
GetRenderPassCountThe number of XRDisplaySubsystem.XRRenderPass entries for this XR Display.
GetRenderTextureGiven the UnityXRRenderTextureID returned by IUnityXRDisplayInterface::CreateTexture, return the managed UnityEngine.RenderTexture instance.
GetRenderTextureForRenderPassGiven a render pass, return the RenderTexture instance backing that render pass. If the render pass is invalid, or if the render texture does not exist, return null.
GetSharedDepthTextureForRenderPassGiven a render pass, return the shared depth buffer RenderTexture instance backing that render pass. If the render pass is invalid, or if the render texture does not exist, return null.
MarkTransformLateLatchedThis marks a given GameObject's transform to be late latched in the next frame. Once marked for late latching, the GameObject transform and its descendants will be updated with the latest VR pose updates before rendering is submitted to the GPU.
SetFocusPlaneSets a point in 3D space that acts as the focal point of the Scene for this frame. This helps to improve the visual fidelity of content around this point. You must set this value every frame.
SetMSAALevelSet MSAA level for the DisplaySubsystem's render texture.
SetPreferredMirrorBlitModeOverride the XR display's preferred mirror blit mode from the script.
TryGetAppGPUTimeLastFrameRetrieves the time the GPU has spent on executing commands from the application's last frame, as reported by the XR Plugin. Measured in seconds.
TryGetCompositorGPUTimeLastFrameRetrieves the amount of time that the GPU spent executing the compositor renderer during the last frame, as reported by the XR Plugin. Measured in seconds.
TryGetDisplayRefreshRateRetrieves the refresh rate of the display as reported by the XR Plugin.
TryGetDroppedFrameCountRetrieves the number of dropped frames reported by the XR Plugin.
TryGetFramePresentCountRetrieves the number of times the current frame has been drawn to the device as reported by the XR Plugin.
TryGetMotionToPhotonRetrieves the motion-to-photon value as reported by the XR Plugin.

Events

Member

Description

displayFocusChangedEvent sent when XR display focus changes.

Structs

Struct

Description

XRDisplaySubsystem.XRBlitParamsThis struct holds data for a single blit operation.
XRDisplaySubsystem.XRMirrorViewBlitDescAll information in this struct describes the desired mirror view blit operation.
XRDisplaySubsystem.XRRenderParameterA single viewpoint that must be rendered by the render pipeline. Contains a target viewport and texture array slice within a corresponding renderTarget.
XRDisplaySubsystem.XRRenderPassContains configuration parameters about which view into the Scene the renderer should rasterize, and a render target (which can be a texture array) for the result of the rasterization.

Enums

Enum

Description

XRDisplaySubsystem.FoveatedRenderingFlagsOptional flags to control the foveated rendering system.
XRDisplaySubsystem.LateLatchNodeType of node to be late latched.
XRDisplaySubsystem.ReprojectionModeThe kind of reprojection the app requests to stabilize its holographic rendering relative to the user's head motion.
XRDisplaySubsystem.TextureLayoutFlags that represents supported texture layout.

Inheritance