Chroma Attributes
Header
Attribute | [Header(<font size>)] |
---|---|
Shorthand | [h(<font size>)] |
Description | Adds a bold label to the inspector. Useful to add names to groups of parameters. |
Notes | The font size is optional. If not specified, the default font size is used (which is 13). |
Usage: | |
● Shader Graph | |
● Code | _AnyNameHere("[Header] My Header", Float) = 0.5 |
Result |
Space
Attribute | [Space(<size>)] |
---|---|
Shorthand | [s(<size>)] |
Description | Adds a vertical space to the inspector. Useful to separate groups of parameters. |
Notes | The size is optional. If not specified, the default size is used (which is 5). |
Usage: | |
Shader Graph | ● As a separate property: ● As a suffix in an existing property: |
Code | ● As a separate property:_AnyNameHere("[Space]", Float) = 0.5 ● As a suffix in an existing property: _MyColor("[s] My Color", Color) = (1,1,1,1) |
Result |
Tabulation
Attribute | [Tab] |
---|---|
Shorthand | [t] |
Description | Adds a horizontal indent before a parameter. Useful to align related parameters. |
Notes | ● You can use multiple tabs on one property for more indent. ● Tabs can be added only as a suffix to an existing property. |
Usage: | |
Shader Graph | |
Code | _MyFloat("[t] My Float", Float) = 0 |
Result |
Horizontal Line
Attribute | [Line(<color>)] |
---|---|
Shorthand | [l(<color>)] |
Description | Adds a horizontal line to the inspector. Useful to separate groups of parameters. |
Notes | ● The color is optional. If not specified, the default color is used (which is gray). ● The color is in HTML format, it accepts HEX values, eg. 8A2BE2 or color names, eg. coral (full list). |
Usage: | |
Shader Graph | ● As a separate property: ● As a suffix in an existing property: |
Code | ● As a separate property:_AnyNameHere("[Line(coral)]", Float) = 0.5 ● As a suffix in an existing property: _MyColor("[l(coral)] My Color", Color) = (1,1,1,1) |
Result |
Note
Attribute | [Note(<size>)] |
---|---|
Shorthand | [n(<size>)] |
Description | Adds a note to the inspector. Useful to add additional information to a parameter. |
Notes | The size is optional. If not specified, the default size is used (which is 12). |
Usage: | |
Shader Graph | |
Code | _AnyNameHere("[Note] A very useful note", Float) = 0.5 |
Result |
Foldout
Attribute | [Foldout(<property count>)] |
---|---|
Shorthand | [f(<property count>)] |
Description | Adds a foldout to the inspector. Useful to group related parameters. |
Notes | ● The property count is the number of properties that will be folded into the foldout. ● The property count is optional. If not specified, all the following properties will be folded until the next foldout or the end of list. |
Usage: | |
Shader Graph | |
Code | ● _AnyNameHere("[Foldout] A foldout", Float) = 0.5 ● _AnyNameHere("[Foldout(2)] A foldout with 2 properties", Float) = 0.5 |
Result |
Show If
Attribute | [ShowIf(<condition>)] |
---|---|
Shorthand | [si(<condition>)] |
Description | Hides a property from the inspector based on the value of a keyword. Useful omit parameters if they are not used in the current configuration. |
Notes | ● The condition is a boolean expression that can contain any of the keywords in the shader. ● If the keyword is a boolean, use its refenrence name as the condition. ● If the keyword is an enum, the condition is in the following format: <keyword>_<enum enry> . You can replace the _ with = if you prefer.● You can have multiple conditions in the same attribute separated by comma. All conditions must evaluate to true for the property to be displayed. |
Usage: | |
Shader Graph | |
Code | ● Boolean:[Toggle] _MyKeyword("My Keyword", Float) = 0 _MyValue("[ShowIf(_MyKeyword)] A property that will be shown only if _MyKeyword is enabled", Float) = 0.5 ● Enum [KeywordEnum(None, Add, Multiply)] _Overlay ("Overlay mode", Float) = 0 _MyValue("[ShowIf(_Overlay=Add)]) A property that will be shown only if _Overlay is set to Add |
Result |
One-line Texture
Attribute | [mini] |
---|---|
Shorthand | [m] |
Description | Displays a texture in a smaller space. |
Notes | ● This attribute can be applied only on Texture properties. |
Usage: | |
Shader Graph | |
Code | _AnyNameHere("[mini] A mini texture", 2D) = "white" {} |
Result |
Tooltip
Attribute | [Tooltip(<property name>)] |
---|---|
Shorthand | [tt(<property name>)] |
Description | Adds a tooltip to a property. |
Notes | ● Property name is the name of the property to which the tooltip should be applied. If it is not provided, the tooltip is applied to the property above the tooltip attribute.</br>● The tooltip will be displayed when the mouse hovers over the property on the Material. |
Usage: | |
Shader Graph | |
Code | _AnyNameHere("[Tooltip] A tooltip", Float) = 0.5 |
Result |
MinMax
Attribute | [MinMax(<min>, <max>)] |
---|---|
Shorthand | [mm(<min>, <max>)] |
Description | Adds a slider with a minimum and maximum value. |
Notes | ● This attribute can be applied only on Vector2 / Vector properties.● The minimum and maximum values are optional. If not specified, the default values are used (which are 0 and 1). ● If only one value is provided, it becomes the max value, while min is set to 0.● The bounds and exact values of the range appear on the property’s tooltip. |
Usage: | |
Shader Graph | |
Code | _MyRangeSlider("[MinMax(5, 10)] A slider with a min and max", Float) = 0.5 |
Result |
Gradient
Attribute | [Gradient(<resolution, HDR>)] |
---|---|
Shorthand | [g(<resolution, HDR>)] |
Description | Adds a gradient picker. |
Notes | ● This attribute can be applied only on Texture2D properties.● Both parameters are optional. If the resolution is not specified, a value of 512 is used. If HDR not specified, it is set to false. |
Usage: | |
Shader Graph | |
Code | ● _MyGradient("[Gradient] A gradient", 2D) = "white" {} ● _MyGradient("[Gradient(true)] A gradient with HDR", 2D) = "white" {} |
Result |
Note: For more info, check out full gradient documentation.
Curve
Attribute | [Curve] |
---|---|
Shorthand | [c] |
Description | Adds a curve picker. |
Notes | ● This attribute can be applied only on Texture2D properties.● The curve picker is a 2D curve. ● In order to capture values greater than 1, curves use HDR textures. |
Usage: | |
Shader Graph | |
Code | _MyCurve("[Curve] A curve", 2D) = 0 |
Result |
Note: For more info, check out full curve documentation.