API reference

UOculusXRPassthroughLayerBase Class

Extends UStereoLayerShape

Fields

TEnumAsByte< enum EOculusXRPassthroughLayerOrder > LayerOrder[Get]
Ordering of passthrough layer in relation to scene rendering
float TextureOpacityFactor[Get]
Opacity of the (main) passthrough texture.
bool bEnableEdgeColor[Get]
Enable edge color
FLinearColor EdgeColor[Get]
Color of the passthrough edge rendering effect.
bool bEnableColorMap[Get]
Enable color mapping
TEnumAsByte< enum EOculusXRColorMapType > ColorMapType[Get]
Type of colormapping to perform
bool bUseColorMapCurve[Get]
Whether to use color map curve or gradient
UCurveLinearColor * ColorMapCurve[Get]
Passthrough color mapping gradient converts grayscale to color
float Contrast[Get]
Contrast setting for color mapping
float Brightness[Get]
Brightness setting for color mapping
float Posterize[Get]
Posterize setting for grayscale and grayscale to color mapping
float Saturation[Get]
Saturation setting for color adjustment mapping
float LutWeight[Get]
Color LUT Weight. It is used to combine LUT with Passthrough if one LUT is provided. If two LUTs are provided LutWeight will be used to blend them.
UOculusXRPassthroughColorLut * ColorLUTSource[Get]
Color LUT properties. If only ColorLUTSource is provided it will be blended with passthrough layer using following formula: Result = ColorLUTSource * LutWeight + Passthrough * (1 - LutWeight )
UOculusXRPassthroughColorLut * ColorLUTTarget[Get]
Color LUT properties. If two LUTs are provided they will be blended using following formula: Result = ColorLUTsSource * ( 1 - LutWeight ) + ColorLUTsTarget * LutWeight
FLinearColor ColorScale[Get]
Color value that will be multiplied to the current color map
FLinearColor ColorOffset[Get]
Color value that will be added to the current color map

Protected Fields

TArray< FLinearColor > ColorArray[Get]
TArray< FLinearColor > NeutralColorArray[Get]

Member Functions

void SetTextureOpacity
( float InOpacity )
void EnableEdgeColor
( bool bInEnableEdgeColor )
void EnableColorMap
( bool bInEnableColorMap )
void EnableColorMapCurve
( bool bInEnableColorMapCurve )
void SetEdgeRenderingColor
( FLinearColor InEdgeColor )
void SetColorMapControls
( float InContrast,
float InBrightness,
float InPosterize )
Set color map controls for grayscale and grayscale to rgb color mapping
void SetBrightnessContrastSaturation
( float InContrast,
float InBrightness,
float InSaturation )
Set color map controls for color adjustment color mapping
void SetColorScaleAndOffset
( FLinearColor InColorScale,
FLinearColor InColorOffset )
void SetColorMapCurve
( UCurveLinearColor * InColorMapCurve )
Set color curve that will be added to the color map in grayscale modes > will be converted into a gradient
void SetColorMapType
( EOculusXRColorMapType InColorMapType )
void SetColorArray
( const TArray< FLinearColor > & InColorArray )
Set color map array directly instead through a color curve
void ClearColorMap ( )
void SetLayerPlacement
( EOculusXRPassthroughLayerOrder InLayerOrder )
void SetColorLUTSource
( class UOculusXRPassthroughColorLut * InColorLUTSource )
Sets Color LUT source. If ColorMapType is "Color LUT", then source will be blended with passthrough using folowing formula: Result = ColorLUTSource * LutWeight + Passthrough * (1 - LutWeight ) If ColorMapType is "Interpolated Color LUT", then source will be blended with color LUT target using folowing formula: Result = ColorLUTSource * ( 1 - LutWeight ) + ColorLUTTarget * LutWeight
void SetColorLUTTarget
( class UOculusXRPassthroughColorLut * InColorLUTTarget )
Sets Color LUT target. If ColorMapType is "Interpolated Color LUT", then target will be blended with passthrough using folowing formula: Result = ColorLUTSource * ( 1 - LutWeight ) + ColorLUTTarget * LutWeight Note: If ColorLUTSource is not specified, Color LUT will be not be applied to the Passthrough layer.
void SetColorLUTWeight
( float InWeight )
Sets LUT weight.
void RemoveColorLut ( )
Removes color grading if any is active.

Protected Functions

TArray< FLinearColor > GenerateColorArrayFromColorCurve
( const UCurveLinearColor * InColorMapCurve )
TArray< FLinearColor > GetOrGenerateNeutralColorArray ( )
TArray< FLinearColor > GenerateColorArray
( bool bInUseColorMapCurve,
const UCurveLinearColor * InColorMapCurve )
TArray< FLinearColor > GetColorArray
( bool bInUseColorMapCurve,
const UCurveLinearColor * InColorMapCurve )
FColorLutDesc GenerateColorLutDescription
( float InLutWeight,