# Keywords

Advanced Dissolve is not just a one shader effect, it is a collection of various multiple effects that can be turned on/off any time, mixed together or used separately. Each of those effects is controlled using its own individual shader keyword.

All Advanced Dissolve keywords in material editor have <img src="https://371873058-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDmmEjlCGzGOqRX7UsP6L%2Fuploads%2FGtf8VC93PEuXZ2ZWVxJz%2Fblue.png?alt=media&#x26;token=4ac4a14b-c273-4ae6-8086-7623a08575db" alt="" data-size="line"> background:

<div align="left"><figure><img src="https://371873058-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDmmEjlCGzGOqRX7UsP6L%2Fuploads%2FgJrxK8ZOfUiOFTkab7Rs%2FMaterialEditor_State_Enabled.png?alt=media&#x26;token=c8b2bc02-bdc8-4533-b561-132f5799b09e" alt="" width="314"><figcaption></figcaption></figure></div>

Advanced Dissolve shader has 9 groups of effects controlled by 39 keywords:

| State (2)                                                                                                                                           |
| --------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_STATE\_DISABLED</code></mark></p><p><mark style="color:blue;"><code>\_AD\_STATE\_ENABLED</code></mark></p> |

| Cutout -> Standard  -> Source (6)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_NONE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_BASE\_ALPHA</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_CUSTOM\_MAP</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_TWO\_CUSTOM\_MAPS</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_THREE\_CUSTOM\_MAPS</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_USER\_DEFINED</code></mark></p> |

| Cutout -> Standard  -> Source -> Mapping Type (3)                                                                                                                                                                                                                                                                                                           |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_MAPS\_MAPPING\_TYPE\_DEFAULT</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_MAPS\_MAPPING\_TYPE\_TRIPLANAR</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_STANDARD\_SOURCE\_MAPS\_MAPPING\_TYPE\_SCREEN\_SPACE</code></mark></p> |

| Cutout -> Geometric -> Type (7)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_TYPE\_NONE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_TYPE\_XYZ</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_TYPE\_PLANE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_TYPE\_SPHERE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_TYPE\_CUBE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_TYPE\_CAPSULE</code></mark></p> |

| Cutout -> Geometric -> Count (4)                                                                                                                                                                                                                                                                                                                                    |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_COUNT\_ONE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_COUNT\_TWO</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_COUNT\_THREE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_CUTOUT\_GEOMETRIC\_COUNT\_FOUR</code></mark></p> |

| Edge -> Base -> Source (4)                                                                                                                                                                                                                                                                                                                                           |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_EDGE\_BASE\_SOURCE\_NONE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_BASE\_SOURCE\_CUTOUT\_STANDARD</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_BASE\_SOURCE\_CUTOUT\_GEOMETRIC</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_BASE\_SOURCE\_ALL</code></mark></p> |

| Edge -> Additional Color -> Source (6)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_EDGE\_ADDITIONAL\_COLOR\_NONE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_ADDITIONAL\_COLOR\_BASE\_COLOR</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_ADDITIONAL\_COLOR\_CUSTOM\_MAP</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_ADDITIONAL\_COLOR\_GRADIENT\_MAP</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_ADDITIONAL\_COLOR\_GRADIENT\_COLOR</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_ADDITIONAL\_COLOR\_USER\_DEFINED</code></mark></p> |

| Edge -> UV Distortion -> Source (2)                                                                                                                                                                  |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_EDGE\_UV\_DISTORTION\_SOURCE\_DEFAULT</code></mark></p><p><mark style="color:blue;"><code>\_AD\_EDGE\_UV\_DISTORTION\_SOURCE\_CUSTOM\_MAP</code></mark></p> |

| Additional Settings -> Global Control ID (5)                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><mark style="color:blue;"><code>\_AD\_GLOBAL\_CONTROL\_ID\_NONE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_GLOBAL\_CONTROL\_ID\_ONE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_GLOBAL\_CONTROL\_ID\_TWO</code></mark></p><p><mark style="color:blue;"><code>\_AD\_GLOBAL\_CONTROL\_ID\_THREE</code></mark></p><p><mark style="color:blue;"><code>\_AD\_GLOBAL\_CONTROL\_ID\_FOUR</code></mark></p> |

{% hint style="info" %}
In Unity 2019.4 and later versions all keywords are local and they do not contribute towards Unity’s global keyword count limit (256).
{% endhint %}

{% hint style="info" %}
Kewords in materials can be enabled/disabled using Unity's [Material.EnableKeyword](https://docs.unity3d.com/ScriptReference/Material.EnableKeyword.html) and [Material.DisableKeyword](https://docs.unity3d.com/ScriptReference/Material.DisableKeyword.html) methods, or using Advanced Dissolve controller script explained in the [**Run-time API**](https://amazing-assets.gitbook.io/advanced-dissolve/run-time-api) chapter.
{% endhint %}

{% hint style="info" %}
SRP Batcher compatible shaders are keywords free. All used keywords are baked inside shader and unused ones are removed.
{% endhint %}
