API reference
API reference
Select your platform
No SDKs available
No versions available

OVRPassthroughLayer Class

Extends MonoBehaviour
A layer used for passthrough.

Fields

colorMapEditorBrightness : float
This field is not intended for public scripting.
Signature
float OVRPassthroughLayer.colorMapEditorBrightness
colorMapEditorContrast : float
This field is not intended for public scripting.
Signature
float OVRPassthroughLayer.colorMapEditorContrast
colorMapEditorGradient : Gradient
This field is not intended for public scripting.
Use SetColorMapControls() instead.
Signature
Gradient OVRPassthroughLayer.colorMapEditorGradient
colorMapEditorPosterize : float
This field is not intended for public scripting.
Use SetColorMapControls() instead.
Signature
float OVRPassthroughLayer.colorMapEditorPosterize
colorMapEditorSaturation : float
This field is not intended for public scripting.
Signature
float OVRPassthroughLayer.colorMapEditorSaturation
colorOffset : Vector4
Color offset is a value which gets added to the pixel color values during compositing.
The four components of the vector correspond to the R, G, B, and A values, default set to {0,0,0,0}.
Signature
Vector4 OVRPassthroughLayer.colorOffset
colorScale : Vector4
Color scale is a factor applied to the pixel color values during compositing.
The four components of the vector correspond to the R, G, B, and A values, default set to {1,1,1,1}.
Signature
Vector4 OVRPassthroughLayer.colorScale
compositionDepth : int
The compositionDepth defines the order of the layers in composition.
The layer with smaller compositionDepth would be composited in the front of the layer with larger compositionDepth. The default value is zero.
Signature
int OVRPassthroughLayer.compositionDepth
hidden : bool
Property that can hide layers when required.
Should be false when present, true when hidden. By default, the value is set to false, which means the layers are present.
Signature
bool OVRPassthroughLayer.hidden
Overlay type that defines the placement of the passthrough layer to appear on top as an overlay or beneath as an underlay of the application’s main projection layer.
By default, the passthrough layer appears as an overlay.
Signature
OVROverlay.OverlayType OVRPassthroughLayer.overlayType
overridePerLayerColorScaleAndOffset : bool
Specify whether colorScale and colorOffset should be applied to this layer.
By default, the color scale and offset are not applied to the layer.
Signature
bool OVRPassthroughLayer.overridePerLayerColorScaleAndOffset
projectionSurfaceType : ProjectionSurfaceType
The type of the surface which passthrough textures are projected on: Automatic reconstruction or user-defined geometry.
This field can only be modified immediately after the component is instantiated (e.g. using AddComponent). Once the backing layer has been created, changes won't be reflected unless the layer is disabled and enabled again. Default is automatic reconstruction.
Signature
ProjectionSurfaceType OVRPassthroughLayer.projectionSurfaceType

Properties

colorMapEditorType : ColorMapEditorType
[Get][Set]
Editor attribute to get or set the selection in the inspector.
Using this selection will update the colorMapType and colorMapData if needed.
Signature
ColorMapEditorType OVRPassthroughLayer.colorMapEditorType
edgeColor : Color
[Get][Set]
Color for the edge rendering.
Signature
Color OVRPassthroughLayer.edgeColor
edgeRenderingEnabled : bool
[Get][Set]
Enable or disable the Edge rendering.
Use this flag to enable or disable the edge rendering but retain the previously selected color (incl. alpha) in the UI when it is disabled.
Signature
bool OVRPassthroughLayer.edgeRenderingEnabled
textureOpacity : float
[Get][Set]
Float that defines the passthrough texture opacity.
Value range from 0f to 1f.
Signature
float OVRPassthroughLayer.textureOpacity

Events

PassthroughLayerResumed : Action
Occurs when a passthrough layer has been rendered and presented on the HMD screen for the first time after being restarted.
Signature
Action OVRPassthroughLayer.PassthroughLayerResumed

Methods

AddSurfaceGeometry ( obj , updateTransform )
Add a GameObject to the Insight Passthrough projection surface.
This is only applicable if the projection surface type is UserDefined. When updateTransform parameter is set to true, OVRPassthroughLayer will update the transform of the surface mesh every frame. Otherwise only the initial transform is recorded.
Signature
void OVRPassthroughLayer.AddSurfaceGeometry(GameObject obj, bool updateTransform=false)
Parameters
obj: GameObject  The Gameobject you want to add to the Insight Passthrough projection surface.
updateTransform: bool  Indicate if the transform should be updated every frame
Returns
void
DisableColorMap ()
Disables color mapping.
Use this to remove any effects.
Signature
void OVRPassthroughLayer.DisableColorMap()
Returns
void
IsSurfaceGeometry ( obj )
Checks if the given gameobject is a surface geometry (If called with AddSurfaceGeometry).
Signature
bool OVRPassthroughLayer.IsSurfaceGeometry(GameObject obj)
Parameters
obj: GameObject
Returns
bool  True if the gameobject is a surface geometry.
RemoveSurfaceGeometry ( obj )
Removes a GameObject that was previously added using AddSurfaceGeometry from the projection surface.
Signature
void OVRPassthroughLayer.RemoveSurfaceGeometry(GameObject obj)
Parameters
obj: GameObject  The Gameobject to remove.
Returns
void
SetBrightnessContrastSaturation ( brightness , contrast , saturation )
This method allows to configure brightness and contrast adjustment for Passthrough images.
Signature
void OVRPassthroughLayer.SetBrightnessContrastSaturation(float brightness=0.0f, float contrast=0.0f, float saturation=0.0f)
Parameters
brightness: float  Modify the brightness of Passthrough. Valid range: [-1, 1]. A value of 0 means that brightness is left unchanged.
contrast: float  Modify the contrast of Passthrough. Valid range: [-1, 1]. A value of 0 means that contrast is left unchanged.
saturation: float  Modify the saturation of Passthrough. Valid range: [-1, 1]. A value of 0 means that saturation is left unchanged.
Returns
void
SetColorLut ( lut , weight )
Applies a color LUT to the passthrough layer.
Signature
void OVRPassthroughLayer.SetColorLut(OVRPassthroughColorLut lut, float weight=1)
Parameters
weight: float  Value between 0 and 1 which defines the blend between the original Passthrough colors and the LUT. If weight is 0, the appearance of Passthrough is unchanged. If weight is 1, the colors are fully taken from the LUT. Values between 0 and 1 lead to a linear interpolation between the original color and the LUT color. This value can be animated to create smooth transitions.
Returns
void
SetColorLut ( lutSource , lutTarget , weight )
Applies the interpolation between two color LUTs to the passthrough layer.
Signature
void OVRPassthroughLayer.SetColorLut(OVRPassthroughColorLut lutSource, OVRPassthroughColorLut lutTarget, float weight)
Parameters
weight: float  Value between 0 and 1 which defines the blend between lutSource and lutTarget. The output color is computed as C_result = (1 - weight) * lutSource[C_in] + weight * lutTarget[C_in], where C_in represents the original Passthrough color. This value can be animated to create smooth transitions.
Returns
void
SetColorMap ( values )
This color map method allows to recolor the grayscale camera images by specifying a color lookup table.
Scripts should call the designated methods to set a color map. The fields and properties are only intended for the inspector UI.
Signature
void OVRPassthroughLayer.SetColorMap(Color[] values)
Parameters
values: Color[]  The color map as an array of 256 color values to map each grayscale input to a color.
Returns
void
SetColorMapControls ( contrast , brightness , posterize , gradient , colorMapType )
This method allows to generate (and apply) a color map from the set of controls which is also available in inspector.
Signature
void OVRPassthroughLayer.SetColorMapControls(float contrast, float brightness=0.0f, float posterize=0.0f, Gradient gradient=null, ColorMapEditorType colorMapType=ColorMapEditorType.GrayscaleToColor)
Parameters
contrast: float  The contrast value. Range from -1 (minimum) to 1 (maximum).
brightness: float  The brightness value. Range from 0 (minimum) to 1 (maximum).
posterize: float  The posterize value. Range from 0 to 1, where 0 = no posterization (no effect), 1 = reduce to two colors.
gradient: Gradient  The gradient will be evaluated from 0 (no intensity) to 1 (maximum intensity). This parameter only has an effect if colorMapType is GrayscaleToColor.
colorMapType: ColorMapEditorType  Type of color map which should be generated. Supported values: Grayscale and GrayscaleToColor.
Returns
void
SetColorMapMonochromatic ( values )
This method allows to specify the color map as an array of 256 8-bit intensity values.
Use this to map each grayscale input value to a grayscale output value.
Signature
void OVRPassthroughLayer.SetColorMapMonochromatic(byte[] values)
Parameters
values: byte[]  Array of 256 8-bit values.
Returns
void
SetStyleDirty ()
This method is required for internal use only.
Signature
void OVRPassthroughLayer.SetStyleDirty()
Returns
void

Inner Enums

ProjectionSurfaceType Enum

The passthrough projection surface type: reconstructed | user defined.

Enumeration Constants

MemberDescription
Reconstructed
UserDefined
UserDefined allows you to define a surface.

ColorMapEditorType Enum

Unity editor enumerator to provide a dropdown in the inspector.

Enumeration Constants

MemberValue
None
0
GrayscaleToColor
1
Controls
GrayscaleToColor
Custom
2
Grayscale
3
ColorAdjustment
4
ColorLut
5
InterpolatedColorLut
6