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 |