Skip to content

Latest commit

 

History

History
199 lines (131 loc) · 10.8 KB

File metadata and controls

199 lines (131 loc) · 10.8 KB

Property Types

Description

Property Types are the types of Property than can be defined on the Blackboard for use in the Graph. These Properties are exposed to the Inspector for Materials that use the shader.

Each property has an associated Data Type. See Data Types for more information.

Common Parameters

All properties have the following common parameters in addition to those specific to their Data Types.

Parameter Description
Name The display name of the property.
Reference The internal name for the property in the shader. Use this Reference name instead of the display Name when you reference the property in a script.

If you overwrite this parameter, be aware of the following:
  • If the string doesn't begin with an underscore, Unity automatically adds one.
  • If the string contains any characters that HLSL does not support, Unity removes them.
  • You can revert to the default value: right-click on the Reference field label, and select Reset Reference.
Precision Sets the data precision mode of the Property. The options are Inherit, Single, Half, and Use Graph Precision.
For more details, refer to Precision Modes.
Scope Specifies where you expect to edit the property for materials. The options are:
  • Global: Makes the property editable at a global level, through a C# script only, for all materials that use it. Selecting this option hides or grays out all parameters that relate to the Inspector UI display.
  • Per Material: Makes the property independently editable per material, either through a C# script, or in the Inspector UI if you enable Show In Inspector.
  • Hybrid Per Instance: Has the same effect as Per Material, unless you're using DOTS instancing.
Show In Inspector Displays the property in the material inspector.
If you disable this option, it includes an [HideInInspector] attribute to the material property (refer to Properties block reference in ShaderLab for more details).

Float

Defines a Float value.

Parameters specific to Float properties in addition to the common parameters:

Parameter Description
Mode Select the UI mode in which you want to display the Property and manipulate its value in the material inspector. You need to define a specific subset of parameters according to the option you select.

The options are:
  • Default: Displays a scalar input field in the material inspector. Only requires a Default Value.
  • Slider: Defines the Float property in Range mode to display a slider field in the material inspector. Use additional parameters to define the slider range.
  • Integer: Displays an integer input field in the material inspector. Only requires a Default Value.
Default Value The default value of the Property.
The value might be either a float or an integer according to the Mode you select.

Slider

Additional parameters available when you set the Float property Mode to Slider.

Parameter Description
Min The minimum value of the slider range.
Max The maximum value of the slider range.

Vector 2

Defines a Vector 2 value. Displays a Vector 4 input field in the material inspector, where the z and w components are not used.

Data Type Modes
Vector 2
Field Type Description
Default Vector 2 The default value of the Property.

Vector 3

Defines a Vector 3 value. Displays a Vector 4 input field in the material inspector, where the w component is not used.

Data Type Modes
Vector 3
Field Type Description
Default Vector 3 The default value of the Property.

Vector 4

Defines a Vector 4 value. Displays a Vector 4 input field in the material inspector.

Data Type Modes
Vector 4
Field Type Description
Default Vector 4 The default value of the Property.

Color

Defines a Color value. If the Property Inspector displays Main Color, this is the Main Color for the shader. To select or deselect this node as the Main Color, right-click it in the graph or Blackboard and select Set as Main Color or Clear Main Color. Corresponds to the MainColor ShaderLab Properties attribute.

Data Type Modes
Color Default, HDR

Default

Displays an sRGB color field in the material inspector.

Field Type Description
Default Vector 4 The default value of the Property.

HDR

Displays an HDR color field in the material inspector.

Field Type Description
Default Vector 4 The default value of the Property.

NOTE: In versions prior to 10.0, Shader Graph didn't correct HDR colors for the project colorspace. Version 10.0 corrected this behavior. HDR color properties that you created with older versions maintain the old behavior, but you can use the Graph Inspector to upgrade them. To mimic the old behavior in a gamma space project, you can use the Colorspace Conversion Node to convert a new HDR Color property from RGB to Linear space.

Texture 2D

Defines a Texture 2D value. Displays an object field of type Texture in the material inspector. If the Property Inspector displays Main Texture, this is the Main Texture for the shader. To select or deselect this node as the Main Texture, right-click on it in the graph or Blackboard and select Set as Main Texture or Clear Main Texture. Corresponds to the MainTexture ShaderLab Properties attribute.

Data Type Modes
Texture White, Black, Grey, Bump
Field Type Description
Default Texture The default value of the Property.
Use Tiling and Offset Boolean When set to false, activates the property NoScaleOffset, to enable manipulation of scale and offset separately from other texture properties. See SplitTextureTransformNode.

Texture 3D

Defines a Texture 3D value. Displays an object field of type Texture 3D in the material inspector.

Data Type Modes
Texture
Field Type Description
Default Texture The default value of the Property.

Texture 2D Array

Defines a Texture 2D Array value. Displays an object field of type Texture 2D Array in the material inspector.

Data Type Modes
Texture
Field Type Description
Default Texture The default value of the Property.

Cubemap

Defines a Cubemap value. Displays an object field of type Texture in the material inspector.

Data Type Modes
Cubemap
Field Type Description
Default Cubemap The default value of the Property.

Virtual Texture

Defines a Texture Stack, which appears as object fields of type Texture in the Material Inspector. The number of fields correspond to the number of layers in the property.

Data Type Modes
Virtual Texture
Field Type Description
Default Texture The default value of the Property.

Boolean

Defines a Boolean value. Displays a ToggleUI field in the material inspector. Note that internally to the shader this value is a Float. The Boolean type in Shader Graph is merely for usability.

Data Type Modes
Boolean
Field Type Description
Default Boolean The default value of the Property.

Matrix 2x2

Defines a Matrix 2. Matrices do not display in the Inspector window of the material.

Field Type
Default Matrix 2

Matrix 3x3

Defines a Matrix 3 value. Can't be displayed in the material inspector.

Field Type
Default Matrix 3

Matrix 4x4

Defines a Matrix 4 value. Can't be displayed in the material inspector.

Field Type
Default Matrix 4