Struct XRCameraFrame
Parameters of the Unity Camera
that might be necessary or useful to the provider.
Implements
Inherited Members
Namespace: UnityEngine.XR.ARSubsystems
Assembly: Unity.XR.ARSubsystems.dll
Syntax
public struct XRCameraFrame : IEquatable<XRCameraFrame>
Properties
ambientSphericalHarmonics
The ambient spherical harmonic coefficients that represent lighting in the real-world.
Declaration
public SphericalHarmonicsL2 ambientSphericalHarmonics { get; }
Property Value
Type | Description |
---|---|
SphericalHarmonicsL2 | The ambient spherical harmonic coefficients that represent lighting in the real-world. |
Remarks
See Rendering.SphericalHarmonicsL2 for further details.
averageBrightness
The estimated brightness of the scene.
Declaration
public float averageBrightness { get; }
Property Value
Type | Description |
---|---|
float | The estimated brightness of the scene. |
averageColorTemperature
The estimated color temperature of the scene.
Declaration
public float averageColorTemperature { get; }
Property Value
Type | Description |
---|---|
float | The estimated color temperature of the scene. |
averageIntensityInLumens
The estimated intensity, in lumens, of the scene.
Declaration
public float averageIntensityInLumens { get; }
Property Value
Type | Description |
---|---|
float | The estimated intensity, in lumens, of the scene. |
cameraGrain
A texture that simulates the camera's noise.
Declaration
public XRTextureDescriptor cameraGrain { get; }
Property Value
Type | Description |
---|---|
XRTextureDescriptor | A texture that simulates the camera's noise. |
colorCorrection
The estimated color correction value of the scene.
Declaration
public Color colorCorrection { get; }
Property Value
Type | Description |
---|---|
Color | The estimated color correction value of the scene. |
displayMatrix
The 4x4 display matrix for the camera frame.
Declaration
public Matrix4x4 displayMatrix { get; }
Property Value
Type | Description |
---|---|
Matrix4x4 | The 4x4 display matrix for the camera frame. |
exposureDuration
The camera exposure duration, in seconds with sub-millisecond precision, of the scene.
Declaration
public double exposureDuration { get; }
Property Value
Type | Description |
---|---|
double | The camera exposure duration, in seconds with sub-millisecond precision, of the scene. |
exposureOffset
The camera exposure offset of the scene for lighting scaling.
Declaration
public float exposureOffset { get; }
Property Value
Type | Description |
---|---|
float | The camera exposure offset of the scene for lighting scaling. |
hasAmbientSphericalHarmonics
True
if the frame has the ambient spherical harmonics coefficients of the scene.
Declaration
public bool hasAmbientSphericalHarmonics { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasAverageBrightness
True
if the frame has an average brightness.
Declaration
public bool hasAverageBrightness { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasAverageColorTemperature
True
if the frame has an average color temperature.
Declaration
public bool hasAverageColorTemperature { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasAverageIntensityInLumens
True
if the frame has an average intensity in lumens.
Declaration
public bool hasAverageIntensityInLumens { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasCameraGrain
True
if the frame has a camera grain texture.
Declaration
public bool hasCameraGrain { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasColorCorrection
True
if the frame has a color correction value.
Declaration
public bool hasColorCorrection { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasDisplayMatrix
True
if the frame has a display matrix.
Declaration
public bool hasDisplayMatrix { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasExposureDuration
True
if the frame has an exposure duration in seconds with sub-millisecond precision.
Declaration
public bool hasExposureDuration { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasExposureOffset
True
if the frame has an exposure offset for scaling lighting.
Declaration
public bool hasExposureOffset { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasMainLightColor
True
if the frame has the estimated main light color of the scene.
Declaration
public bool hasMainLightColor { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasMainLightDirection
True
if the frame has the estimated main light direction of the scene.
Declaration
public bool hasMainLightDirection { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasMainLightIntensityLumens
True
if the frame has the estimated main light channel-wise intensity of the scene.
Declaration
public bool hasMainLightIntensityLumens { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasNoiseIntensity
True
if the frame has a camera grain noise.
Declaration
public bool hasNoiseIntensity { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasProjectionMatrix
True
if the frame has a projection matrix.
Declaration
public bool hasProjectionMatrix { get; }
Property Value
Type | Description |
---|---|
bool |
|
hasTimestamp
True
if the frame has a timestamp.
Declaration
public bool hasTimestamp { get; }
Property Value
Type | Description |
---|---|
bool |
|
mainLightColor
The estimated color of the most influential real-world light in the scene.
Declaration
public Color mainLightColor { get; }
Property Value
Type | Description |
---|---|
Color | The estimated color of the most influential real-world light in the scene. |
mainLightDirection
The estimated direction of the most influential real-world light in the scene.
Declaration
public Vector3 mainLightDirection { get; }
Property Value
Type | Description |
---|---|
Vector3 | The estimated direction of the most influential real-world light in the scene. |
mainLightIntensityLumens
The estimated intensity in lumens of the most influential real-world light in the scene.
Declaration
public float mainLightIntensityLumens { get; }
Property Value
Type | Description |
---|---|
float | The estimated intensity in lumens of the most influential real-world light in the scene. |
nativePtr
A native pointer associated with this frame. The data pointed to by this pointer is specific to provider implementation.
Declaration
public IntPtr nativePtr { get; }
Property Value
Type | Description |
---|---|
IntPtr | The native pointer associated with this frame. |
noiseIntensity
The level of intensity of camera grain noise in a scene.
Declaration
public float noiseIntensity { get; }
Property Value
Type | Description |
---|---|
float | The level of intensity of camera grain noise in a scene. |
projectionMatrix
The 4x4 projection matrix for the camera frame.
Declaration
public Matrix4x4 projectionMatrix { get; }
Property Value
Type | Description |
---|---|
Matrix4x4 | The 4x4 projection matrix for the camera frame. |
properties
The set of all flags indicating which properties are included in the frame.
Declaration
public XRCameraFrameProperties properties { get; }
Property Value
Type | Description |
---|---|
XRCameraFrameProperties | The set of all flags indicating which properties are included in the frame. |
timestampNs
The timestamp, in nanoseconds, associated with this frame.
Declaration
public long timestampNs { get; }
Property Value
Type | Description |
---|---|
long | The timestamp, in nanoseconds, associated with this frame. |
trackingState
The TrackingState associated with the camera.
Declaration
public TrackingState trackingState { get; }
Property Value
Type | Description |
---|---|
TrackingState | The tracking state associated with the camera. |
Methods
Equals(object)
Compares for equality.
Declaration
public override bool Equals(object obj)
Parameters
Type | Name | Description |
---|---|---|
object | obj | An |
Returns
Type | Description |
---|---|
bool |
|
Overrides
Equals(XRCameraFrame)
Compares for equality.
Declaration
public bool Equals(XRCameraFrame other)
Parameters
Type | Name | Description |
---|---|---|
XRCameraFrame | other | The other XRCameraFrame to compare against. |
Returns
Type | Description |
---|---|
bool |
|
GetHashCode()
Generates a hash code suitable for use in HashSet
and Dictionary
.
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
int | A hash of the XRCameraFrame. |
Overrides
ToString()
Generates a string representation of this XRCameraFrame suitable for debugging purposes.
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
string | A string representation of this XRCameraFrame. |
Overrides
TryGetAverageBrightness(out float)
Provides the brightness for the whole image as an average of all pixels' brightness.
Declaration
public bool TryGetAverageBrightness(out float averageBrightness)
Parameters
Type | Name | Description |
---|---|---|
float | averageBrightness | An estimated average brightness for the environment. |
Returns
Type | Description |
---|---|
bool |
|
TryGetAverageColorTemperature(out float)
Provides the color temperature for the whole image as an average of all pixels' color temperature.
Declaration
public bool TryGetAverageColorTemperature(out float averageColorTemperature)
Parameters
Type | Name | Description |
---|---|---|
float | averageColorTemperature | An estimated color temperature. |
Returns
Type | Description |
---|---|
bool |
|
TryGetAverageIntensityInLumens(out float)
Provides the intensity, in lumens, for the environment.
Declaration
public bool TryGetAverageIntensityInLumens(out float averageIntensityInLumens)
Parameters
Type | Name | Description |
---|---|---|
float | averageIntensityInLumens | An estimated average intensity, in lumens, for the environment. |
Returns
Type | Description |
---|---|
bool |
|
TryGetDisplayMatrix(out Matrix4x4)
Provides the display matrix defining how texture is being rendered on the screen.
Declaration
public bool TryGetDisplayMatrix(out Matrix4x4 displayMatrix)
Parameters
Type | Name | Description |
---|---|---|
Matrix4x4 | displayMatrix | The display matrix for rendering. |
Returns
Type | Description |
---|---|
bool |
|
TryGetProjectionMatrix(out Matrix4x4)
Provides the projection matrix for the camera frame.
Declaration
public bool TryGetProjectionMatrix(out Matrix4x4 projectionMatrix)
Parameters
Type | Name | Description |
---|---|---|
Matrix4x4 | projectionMatrix | The projection matrix used by the |
Returns
Type | Description |
---|---|
bool |
|
TryGetTimestamp(out long)
Provides a timestamp of the camera frame.
Declaration
public bool TryGetTimestamp(out long timestampNs)
Parameters
Type | Name | Description |
---|---|---|
long | timestampNs | The timestamp of the camera frame. |
Returns
Type | Description |
---|---|
bool |
|
Operators
operator ==(XRCameraFrame, XRCameraFrame)
Compares lhs
and rhs
for equality using Equals(XRCameraFrame).
Declaration
public static bool operator ==(XRCameraFrame lhs, XRCameraFrame rhs)
Parameters
Type | Name | Description |
---|---|---|
XRCameraFrame | lhs | The left-hand-side XRCameraFrame of the comparison. |
XRCameraFrame | rhs | The right-hand-side XRCameraFrame of the comparison. |
Returns
Type | Description |
---|---|
bool |
|
operator !=(XRCameraFrame, XRCameraFrame)
Compares lhs
and rhs
for inequality using Equals(XRCameraFrame).
Declaration
public static bool operator !=(XRCameraFrame lhs, XRCameraFrame rhs)
Parameters
Type | Name | Description |
---|---|---|
XRCameraFrame | lhs | The left-hand-side XRCameraFrame of the comparison. |
XRCameraFrame | rhs | The right-hand-side XRCameraFrame of the comparison. |
Returns
Type | Description |
---|---|
bool |
|