Struct CameraData
Struct that holds settings related to camera.
Inherited Members
Namespace: UnityEngine.Rendering.Universal
Syntax
public struct CameraData
Fields
antialiasing
Controls the anti-alising mode used by the integrated post-processing stack.
When any other value other than AntialiasingMode.None
is chosen, a final post-processing pass will be applied to apply anti-aliasing.
This pass can be combined with dithering.
AntialiasingMode
isDitheringEnabled
Declaration
public AntialiasingMode antialiasing
Field Value
Type | Description |
---|---|
AntialiasingMode |
antialiasingQuality
Controls the anti-alising quality of the anti-aliasing mode. antialiasingQuality AntialiasingMode
Declaration
public AntialiasingQuality antialiasingQuality
Field Value
Type | Description |
---|---|
AntialiasingQuality |
backgroundColor
Final background color in the active color space.
Declaration
public Color backgroundColor
Field Value
Type | Description |
---|---|
Color |
baseCamera
Declaration
public Camera baseCamera
Field Value
Type | Description |
---|---|
Camera |
camera
The camera component.
Declaration
public Camera camera
Field Value
Type | Description |
---|---|
Camera |
cameraTargetDescriptor
Render texture settings used to create intermediate camera textures for rendering.
Declaration
public RenderTextureDescriptor cameraTargetDescriptor
Field Value
Type | Description |
---|---|
RenderTextureDescriptor |
cameraType
The camera type. CameraType
Declaration
public CameraType cameraType
Field Value
Type | Description |
---|---|
CameraType |
captureActions
Provides set actions to the renderer to be triggered at the end of the render loop for camera capture.
Declaration
public IEnumerator<Action<RenderTargetIdentifier, CommandBuffer>> captureActions
Field Value
Type | Description |
---|---|
IEnumerator<Action<RenderTargetIdentifier, CommandBuffer>> |
clearDepth
True if this camera should clear depth buffer. This setting only applies to cameras of type CameraRenderType.Overlay
CameraRenderType
Declaration
public bool clearDepth
Field Value
Type | Description |
---|---|
Boolean |
defaultOpaqueSortFlags
The sorting criteria used when drawing opaque objects by the internal URP render passes. When a GPU supports hidden surface removal, URP will rely on that information to avoid sorting opaque objects front to back and benefit for more optimal static batching.
Declaration
public SortingCriteria defaultOpaqueSortFlags
Field Value
Type | Description |
---|---|
SortingCriteria |
See Also
isDefaultViewport
True if this camera is drawing to a viewport that maps to the entire screen.
Declaration
public bool isDefaultViewport
Field Value
Type | Description |
---|---|
Boolean |
isDitheringEnabled
If set to true a final post-processing pass will be applied to apply dithering. This can be combined with post-processing antialiasing. antialiasing
Declaration
public bool isDitheringEnabled
Field Value
Type | Description |
---|---|
Boolean |
isHdrEnabled
True if this camera should render to high dynamic range color targets.
Declaration
public bool isHdrEnabled
Field Value
Type | Description |
---|---|
Boolean |
isStopNaNEnabled
If set to true, the integrated post-processing stack will replace any NaNs generated by render passes prior to post-processing with black/zero. Enabling this option will cause a noticeable performance impact. It should be used while in development mode to identify NaN issues.
Declaration
public bool isStopNaNEnabled
Field Value
Type | Description |
---|---|
Boolean |
maxShadowDistance
Maximum shadow distance visible to the camera. When set to zero shadows will be disable for that camera.
Declaration
public float maxShadowDistance
Field Value
Type | Description |
---|---|
Single |
postProcessEnabled
True if post-processing is enabled for this camera.
Declaration
public bool postProcessEnabled
Field Value
Type | Description |
---|---|
Boolean |
postProcessingRequiresDepthTexture
Returns true if post processing passes require depth texture.
Declaration
public bool postProcessingRequiresDepthTexture
Field Value
Type | Description |
---|---|
Boolean |
renderer
Returns the current renderer used by this camera. ScriptableRenderer
Declaration
public ScriptableRenderer renderer
Field Value
Type | Description |
---|---|
ScriptableRenderer |
renderScale
Render scale to apply when creating camera textures.
Declaration
public float renderScale
Field Value
Type | Description |
---|---|
Single |
renderType
The camera render type used for camera stacking. CameraRenderType
Declaration
public CameraRenderType renderType
Field Value
Type | Description |
---|---|
CameraRenderType |
requiresDepthTexture
True if this camera requires to write _CameraDepthTexture.
Declaration
public bool requiresDepthTexture
Field Value
Type | Description |
---|---|
Boolean |
requiresOpaqueTexture
True if this camera requires to copy camera color texture to _CameraOpaqueTexture.
Declaration
public bool requiresOpaqueTexture
Field Value
Type | Description |
---|---|
Boolean |
resolveFinalTarget
True if this camera is resolving rendering to the final camera render target. When rendering a stack of cameras only the last camera in the stack will resolve to camera target.
Declaration
public bool resolveFinalTarget
Field Value
Type | Description |
---|---|
Boolean |
targetTexture
Controls the final target texture for a camera. If null camera will resolve rendering to screen.
Declaration
public RenderTexture targetTexture
Field Value
Type | Description |
---|---|
RenderTexture |
volumeLayerMask
The camera volume layer mask.
Declaration
public LayerMask volumeLayerMask
Field Value
Type | Description |
---|---|
LayerMask |
volumeTrigger
The camera volume trigger.
Declaration
public Transform volumeTrigger
Field Value
Type | Description |
---|---|
Transform |
worldSpaceCameraPos
Camera position in world space.
Declaration
public Vector3 worldSpaceCameraPos
Field Value
Type | Description |
---|---|
Vector3 |
xrRendering
Declaration
public bool xrRendering
Field Value
Type | Description |
---|---|
Boolean |
Properties
isPreviewCamera
True if the camera rendering is for the preview window in the editor.
Declaration
public readonly bool isPreviewCamera { get; }
Property Value
Type | Description |
---|---|
Boolean |
isSceneViewCamera
True if the camera rendering is for the scene window in the editor.
Declaration
public readonly bool isSceneViewCamera { get; }
Property Value
Type | Description |
---|---|
Boolean |
Methods
GetGPUProjectionMatrix(Int32)
Returns the camera GPU projection matrix. This contains platform specific changes to handle y-flip and reverse z.
Similar to GL.GetGPUProjectionMatrix
but queries URP internal state to know if the pipeline is rendering to render texture.
For more info on platform differences regarding camera projection check: https://docs.unity3d.com/Manual/SL-PlatformDifferences.html
Declaration
public Matrix4x4 GetGPUProjectionMatrix(int viewIndex = 0)
Parameters
Type | Name | Description |
---|---|---|
Int32 | viewIndex | View index in case of stereo rendering. By default |
Returns
Type | Description |
---|---|
Matrix4x4 |
See Also
GetProjectionMatrix(Int32)
Returns the camera projection matrix.
Declaration
public Matrix4x4 GetProjectionMatrix(int viewIndex = 0)
Parameters
Type | Name | Description |
---|---|---|
Int32 | viewIndex | View index in case of stereo rendering. By default |
Returns
Type | Description |
---|---|
Matrix4x4 | The camera projection matrix. |
GetViewMatrix(Int32)
Returns the camera view matrix.
Declaration
public Matrix4x4 GetViewMatrix(int viewIndex = 0)
Parameters
Type | Name | Description |
---|---|---|
Int32 | viewIndex | View index in case of stereo rendering. By default |
Returns
Type | Description |
---|---|
Matrix4x4 | The camera view matrix. |
IsCameraProjectionMatrixFlipped()
True if the camera device projection matrix is flipped. This happens when the pipeline is rendering
to a render texture in non OpenGL platforms. If you are doing a custom Blit pass to copy camera textures
(_CameraColorTexture, _CameraDepthAttachment) you need to check this flag to know if you should flip the
matrix when rendering with for cmd.Draw* and reading from camera textures.
Declaration
public bool IsCameraProjectionMatrixFlipped()
Returns
Type | Description |
---|---|
Boolean |