Class PixelPerfectCamera
The Pixel Perfect Camera component ensures your pixel art remains crisp and clear at different resolutions, and stable in motion.
Inherited Members
Namespace: UnityEngine.Experimental.Rendering.Universal
Syntax
[ExecuteInEditMode]
[DisallowMultipleComponent]
[AddComponentMenu("Rendering/2D/Pixel Perfect Camera")]
[RequireComponent(typeof(Camera))]
[MovedFrom("UnityEngine.Experimental.Rendering")]
[HelpURL("https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@latest/index.html?subfolder=/manual/2d-pixelperfect.html%23properties")]
public class PixelPerfectCamera : MonoBehaviour, IPixelPerfectCamera, ISerializationCallbackReceiver
Properties
assetsPPU
Match this value to to the Pixels Per Unit values of all Sprites within the Scene.
Declaration
public int assetsPPU { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
cropFrame
Defines how the output display will be cropped.
Declaration
public PixelPerfectCamera.CropFrame cropFrame { get; set; }
Property Value
Type | Description |
---|---|
PixelPerfectCamera.CropFrame |
gridSnapping
Defines if pixels will be locked to a grid determined by assetsPPU.
Declaration
public PixelPerfectCamera.GridSnapping gridSnapping { get; set; }
Property Value
Type | Description |
---|---|
PixelPerfectCamera.GridSnapping |
orthographicSize
The target orthographic size of the camera.
Declaration
public float orthographicSize { get; }
Property Value
Type | Description |
---|---|
Single |
pixelRatio
Ratio of the rendered Sprites compared to their original size (readonly).
Declaration
public int pixelRatio { get; }
Property Value
Type | Description |
---|---|
Int32 |
refResolutionX
The original horizontal resolution your Assets are designed for.
Declaration
public int refResolutionX { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
refResolutionY
Original vertical resolution your Assets are designed for.
Declaration
public int refResolutionY { get; set; }
Property Value
Type | Description |
---|---|
Int32 |
requiresUpscalePass
Returns if an upscale pass is required.
Declaration
public bool requiresUpscalePass { get; }
Property Value
Type | Description |
---|---|
Boolean |
Methods
CorrectCinemachineOrthoSize(Single)
Find a pixel-perfect orthographic size as close to targetOrthoSize as possible. Used by Cinemachine to solve compatibility issues with Pixel Perfect Camera.
Declaration
public float CorrectCinemachineOrthoSize(float targetOrthoSize)
Parameters
Type | Name | Description |
---|---|---|
Single | targetOrthoSize | Orthographic size from the live Cinemachine Virtual Camera. |
Returns
Type | Description |
---|---|
Single | The corrected orthographic size. |
OnAfterDeserialize()
OnAfterSerialize implementation.
Declaration
public void OnAfterDeserialize()
Implements
OnBeforeSerialize()
OnBeforeSerialize implementation.
Declaration
public void OnBeforeSerialize()
Implements
RoundToPixel(Vector3)
Round a arbitrary position to an integer pixel position. Works in world space.
Declaration
public Vector3 RoundToPixel(Vector3 position)
Parameters
Type | Name | Description |
---|---|---|
Vector3 | position | The position you want to round. |
Returns
Type | Description |
---|---|
Vector3 | The rounded pixel position. Depending on the values of upscaleRT and pixelSnapping, it could be a screen pixel position or an art pixel position. |