Rasagar/Library/PackageCache/com.unity.render-pipelines.universal/Documentation~/canvas-shader.md
2024-08-26 23:07:20 +03:00

4.0 KiB

uid
urp-canvas-shader

Canvas Shader Graph

The Canvas material type enables you to author Shader Graph shaders that can be applied to UGUI user interface elements.

Shader Graph with the Canvas Material type
Shader Graph with the Canvas Material type

Create a Canvas Shader Graph

To create a Canvas material in Shader Graph, use one of the following methods:

  • Modify an existing Shader Graph.
    1. Open the Shader Graph in the Shader Editor.
    2. In Graph Settings, select the Universal Target. If there isn't one, go to Active Targets, click the Plus button, and select Universal.
    3. In the Material drop-down, select Canvas.
  • Create a new Shader Graph. Go to Assets > Create > Shader Graph > URP and click Canvas Shader Graph.

Contexts

This material type comes with a distinct set of Graph Settings, which significantly affects the Blocks relevant to the Graph. This section provides details regarding the Blocks automatically added by default in this Master Stack material type and the Blocks that determine properties for the Graph Settings of this material type.

Vertex Context

The Vertex context represents the vertex stage of this shader. Unity executes any block you connect to this context in the vertex function of this shader. For more information, refer to Master Stack.

Vertex blocks are not compatible with the Canvas Master Stack.

Fragment Context

The Fragment Context contains the default and relevant Blocks for the Canvas material.

Default Fragment Context

When you create a new Canvas material, the Fragment Context contains the following Blocks by default:

Property Description Setting Dependency Default Value
**Base Color** The base color of the material. None Color.grey
**Alpha** The Material's alpha value. This determines how transparent the material is. The expected range is 0 - 1. None 1.0
**Emission** The color of light to emit from this material's surface. Emissive materials appear as a source of light in your scene. None Color.black

Relevant Fragment Context

Depending on the Graph Settings you use, Shader Graph might add the following Blocks to the Fragment Context:

Graph Settings

The following table describes the Surface Options in the Graph Settings:

Property Description Setting Dependency Default Value
**Alpha Clip Threshold** The alpha value limit that URP uses to determine whether to render each pixel. If the alpha value of the pixel is equal to or higher than the limit, URP renders the pixel. If the value is lower than the limit, URP does not render the pixel. The default value is 0.5. **Alpha Clipping** enabled 0.5
Property Description
**Material Type** Specifies a type for the material. This allows you to customize the material with different settings depending on the type you select. The options are:
• **Sprite Custom Lit**:
• **Sprite Lit**:
• **Sprite Unlit**:
• **Canvas**:
• **Decal**:
• **Fullscreen**:
• **Lit**:
• **Unlit**:
**Alpha Clipping**

Indicates whether this material acts like a Cutout Shader.
For more information about the feature and for the list of properties this feature exposes, refer to Alpha Clipping documentation.