Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,24 @@ You should only expose a property if you intend to change it in the Inspector wh

If a property is not exposed, you can still edit it. To edit the property for every Material instance that uses the selected Shader, open the Shader Graph Asset and edit the property directly in the Blackboard. To edit the property for a single Material instance that uses the Shader, use a script.

**:warning: HDRP reserves a set of property names that you should not use in the Blackboard. If you use any of them, the Material will most likely not work correctly.
For the list of restricted property names and their uses, see the following table:**

Property Name | HDRP Usage
--- | ---
`_EmissionColor` | Global illumination emission color.
`_BaseColor` | Global illumination alpha clip.
`_BaseColorMap` | Global illumination alpha clip.
`_RenderQueueType` | The render queue type HDRP uses to schedule the Material in the render queue.
`_UseShadowThreshold` | HDRP internal.
`_RequireSplitLighting` | HDRP internal.
`_ReceivesSSR` | Surface Options.
`_TransparentDepthPrepassEnable` | Surface Options.
`_TransparentDepthPostpassEnable` | Surface Options.
`_SurfaceType` | Surface Options.
`_DoubleSidedEnable` | Surface Options.
`_AlphaCutoffEnable` | Surface Options.

<a name="ConcreteNodes"></a>

### Material properties in concrete nodes
Expand Down Expand Up @@ -95,4 +113,4 @@ This system is great to avoid duplicating graphs but it have some problem relate
- When you modify the properties of the Master Mode in a Shader Graph, Unity does not synchronize them with Materials unless the Material is open in the Inspector. This means that, when you change certain properties in the Master Node settings, like **Material Type**, Materials that are not open in the Inspector fall out of sync, which breaks the rendering of these Materials. To fix the rendering and synchronize the properties of a Material with its Shader Graph, you can do the following:

- - Open the Material in the Inspector, change the value of one of its properties, and then change it back. This triggers a sync between the master node and the Material, and fixes the Material.
- Call `HDEditorUtils.ResetMaterialKeywords(Material)` from a C# script in your Project. This synchronizes the properties of the Material you pass in with the Material's Shader Graph.
- Call `HDEditorUtils.ResetMaterialKeywords(Material)` from a C# script in your Project. This synchronizes the properties of the Material you pass in with the Material's Shader Graph.