HolographicCameraRenderingParameters HolographicCameraRenderingParameters HolographicCameraRenderingParameters HolographicCameraRenderingParameters Class

Definition

Some information relates to pre-released product which may be substantially modified before it’s commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Prerelease APIs are identified by a Prerelease label.

[Contains prerelease APIs.]
Represents per-camera parameters for rendering holographic content.

public : sealed class HolographicCameraRenderingParameters : IHolographicCameraRenderingParameters, IHolographicCameraRenderingParameters2public sealed class HolographicCameraRenderingParameters : IHolographicCameraRenderingParameters, IHolographicCameraRenderingParameters2Public NotInheritable Class HolographicCameraRenderingParameters Implements IHolographicCameraRenderingParameters, IHolographicCameraRenderingParameters2// You can use this class in JavaScript.
Attributes
Windows 10 requirements
Device family
Windows 10 (introduced v10.0.10586.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (introduced v2)

Remarks

An app can call the SetFocusPoint method each frame to improve holographic image quality. The app can specify the position, normal, and velocity of the user's likely focus point within the scene. Holograms will be most stable both at the specified position, and along the plane defined by that position and the normal. If the content does not have an obvious normal, omit it or have it face the user.

Properties

Direct3D11BackBuffer Direct3D11BackBuffer Direct3D11BackBuffer Direct3D11BackBuffer

Gets the Direct3D 11 back buffer surface for this camera. Apps must retrieve a new back buffer surface for rendering each frame.

public : IDirect3DSurface Direct3D11BackBuffer { get; }public IDirect3DSurface Direct3D11BackBuffer { get; }Public ReadOnly Property Direct3D11BackBuffer As IDirect3DSurface// You can use this property in JavaScript.
Value
IDirect3DSurface IDirect3DSurface IDirect3DSurface IDirect3DSurface

The Direct3D 11 surface that holds the back buffer.

Direct3D11Device Direct3D11Device Direct3D11Device Direct3D11Device

Gets the Direct3D 11 device for this camera.

public : IDirect3DDevice Direct3D11Device { get; }public IDirect3DDevice Direct3D11Device { get; }Public ReadOnly Property Direct3D11Device As IDirect3DDevice// You can use this property in JavaScript.

IsContentProtectionEnabled IsContentProtectionEnabled IsContentProtectionEnabled IsContentProtectionEnabled

Prerelease. Gets or sets whether the app is displaying protected content.

public : PlatForm::Boolean IsContentProtectionEnabled { get; set; }public bool IsContentProtectionEnabled { get; set; }Public ReadWrite Property IsContentProtectionEnabled As bool// You can use this property in JavaScript.
Value
PlatForm::Boolean bool bool bool

Whether content protection is enabled.

Additional features and requirements
Device family
Windows 10 Insider Preview (introduced v10.0.16257.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v5)

Remarks

While content protection is enabled, rendered content will be visible only in the headset, disabling the Mixed Reality Portal's preview.

ReprojectionMode ReprojectionMode ReprojectionMode ReprojectionMode

Gets or sets the kind of reprojection the app is requesting to stabilize its holographic rendering relative to the user's head motion.

public : HolographicReprojectionMode ReprojectionMode { get; set; }public HolographicReprojectionMode ReprojectionMode { get; set; }Public ReadWrite Property ReprojectionMode As HolographicReprojectionMode// You can use this property in JavaScript.
Additional features and requirements
Device family
Windows 10 Creators Update (introduced v10.0.15063.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v4)

Methods

CommitDirect3D11DepthBuffer(IDirect3DSurface) CommitDirect3D11DepthBuffer(IDirect3DSurface) CommitDirect3D11DepthBuffer(IDirect3DSurface) CommitDirect3D11DepthBuffer(IDirect3DSurface)

Provides a depth buffer for this frame to the holographic display pipeline, enabling depth-based stabilization of the frame relative to the user's head motion.

public : void CommitDirect3D11DepthBuffer(IDirect3DSurface value)public void CommitDirect3D11DepthBuffer(IDirect3DSurface value)Public Function CommitDirect3D11DepthBuffer(value As IDirect3DSurface) As void// You can use this method in JavaScript.
Parameters
value
IDirect3DSurface IDirect3DSurface IDirect3DSurface IDirect3DSurface

The Direct3D 11 surface containing the app's depth buffer.

Additional features and requirements
Device family
Windows 10 Creators Update (introduced v10.0.15063.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v4)

Remarks

If an app provides a depth buffer for a frame and then skips calling SetFocusPoint, the focus point and normal are inferred based on the depth buffer.

This method will make use of the Direct3D device you provided to the HolographicSpace. If you've specified the D3D11_CREATE_DEVICE_SINGLETHREADED flag on your device, be sure to call this method from your single Direct3D thread to avoid undefined behavior.

SetFocusPoint(SpatialCoordinateSystem, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3)

Sets the stationary point in the holographic space that the user will likely focus on for the current frame.

public : void SetFocusPoint(SpatialCoordinateSystem coordinateSystem, Vector3 position)public void SetFocusPoint(SpatialCoordinateSystem coordinateSystem, Vector3 position)Public Function SetFocusPoint(coordinateSystem As SpatialCoordinateSystem, position As Vector3) As void// You can use this method in JavaScript.
Parameters
coordinateSystem
SpatialCoordinateSystem SpatialCoordinateSystem SpatialCoordinateSystem SpatialCoordinateSystem

The coordinate system of the position vector.

position
Vector3 Vector3 Vector3 Vector3

The location of the focus point in the specified coordinate system.

Remarks

This is used to improve image quality at the focus point and along its focus plane.

You must set the focus point each frame, or it will reset to its default. If you call CommitDirect3D11DepthBuffer, the default focus point and normal will be inferred from your rendered depth buffer. Otherwise, the default focus point will be 2 meters away from the headset, with a normal facing the headset.

See Also

SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3)

Sets the stationary point in the holographic space that the user will focus on, as well as the normal for a focus plane through that point.

public : void SetFocusPoint(SpatialCoordinateSystem coordinateSystem, Vector3 position, Vector3 normal)public void SetFocusPoint(SpatialCoordinateSystem coordinateSystem, Vector3 position, Vector3 normal)Public Function SetFocusPoint(coordinateSystem As SpatialCoordinateSystem, position As Vector3, normal As Vector3) As void// You can use this method in JavaScript.
Parameters
coordinateSystem
SpatialCoordinateSystem SpatialCoordinateSystem SpatialCoordinateSystem SpatialCoordinateSystem

The coordinate system of the position and normal vectors.

position
Vector3 Vector3 Vector3 Vector3

The location of the focus point in the specified coordinate system.

normal
Vector3 Vector3 Vector3 Vector3

The normal of the focus point in the specified coordinate system, if known. If there is no obvious normal, have it face the user.

Remarks

This is used to improve image quality at the focus point and along its focus plane.

You must set the focus point each frame, or it will reset to its default. If you call CommitDirect3D11DepthBuffer, the default focus point and normal will be inferred from your rendered depth data. Otherwise, the default focus point will be 2 meters away from the headset, with a normal facing the headset.

See Also

SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3, Vector3) SetFocusPoint(SpatialCoordinateSystem, Vector3, Vector3, Vector3)

Sets the moving point in the holographic space that the user will focus on, as well as the normal for a focus plane through that point.

public : void SetFocusPoint(SpatialCoordinateSystem coordinateSystem, Vector3 position, Vector3 normal, Vector3 linearVelocity)public void SetFocusPoint(SpatialCoordinateSystem coordinateSystem, Vector3 position, Vector3 normal, Vector3 linearVelocity)Public Function SetFocusPoint(coordinateSystem As SpatialCoordinateSystem, position As Vector3, normal As Vector3, linearVelocity As Vector3) As void// You can use this method in JavaScript.
Parameters
coordinateSystem
SpatialCoordinateSystem SpatialCoordinateSystem SpatialCoordinateSystem SpatialCoordinateSystem

The coordinate system of the position, normal and velocity vectors.

position
Vector3 Vector3 Vector3 Vector3

The location of the focus point in the specified coordinate system.

normal
Vector3 Vector3 Vector3 Vector3

The normal of the focus point in the specified coordinate system, if known. If there is no obvious normal, have it face the user.

linearVelocity
Vector3 Vector3 Vector3 Vector3

The velocity vector of the focus point in the specified coordinate system.

Remarks

This is used to improve image quality at the focus point and along its focus plane.

You must set the focus point each frame, or it will reset to its default. If you call CommitDirect3D11DepthBuffer, the default focus point and normal will be inferred from your rendered depth data. Otherwise, the default focus point will be 2 meters away from the headset, with a normal facing the headset.

See Also