9.0 KiB
StackLit
The StackLit Master Stack can render materials that are more complex than the Lit Master Stack. It includes all the features available in the Lit shader and, in some cases, provides more advanced or higher quality versions. For example, it uses a more advanced form of specular occlusion and also calculates anisotropic reflections for area lights in the same way the Lit shader does for other light types. It also takes into account light interactions between two vertically stacked physical layers, along with a more complex looking general base layer.
Creating a StackLit Shader Graph
To create a StackLit material in Shader Graph, you can either:
-
Modify an existing Shader Graph.
- Open the Shader Graph in the Shader Editor.
- In Graph Settings, select the HDRP Target. If there isn't one, go to Active Targets, click the Plus button, and select HDRP.
- In the Material drop-down, select StackLit.
-
Create a new Shader Graph.
- Go to Assets > Create >Shader Graph > HDRP and click StackLit Shader Graph.
Contexts
Vertex Context
Default
When you create a new Hair Master Stack, the Vertex Context contains the following Blocks by default:
[!include[](snippets/shader-graph-blocks/vertex-position.md)] [!include[](snippets/shader-graph-blocks/vertex-normal.md)] [!include[](snippets/shader-graph-blocks/vertex-tangent.md)]| Property | Description | Setting Dependency | Default Value |
|---|
Relevant
This Master Stack material type adds all its Vertex Blocks to the Vertex Context by default and has no extra relevant Blocks.
Fragment Context
Default
When you create a new Hair Master Stack, the Fragment Context contains the following Blocks by default:
[!include[](snippets/shader-graph-blocks/base-color.md)] [!include[](snippets/shader-graph-blocks/normal-tangent-space.md)] [!include[](snippets/shader-graph-blocks/bent-normal.md)] [!include[](snippets/shader-graph-blocks/tangent-tangent-space.md)] [!include[](snippets/shader-graph-blocks/metallic.md)] [!include[](snippets/shader-graph-blocks/dielectric-ior.md)] [!include[](snippets/shader-graph-blocks/smoothness.md)] [!include[](snippets/shader-graph-blocks/emission.md)] [!include[](snippets/shader-graph-blocks/ambient-occlusion.md)] [!include[](snippets/shader-graph-blocks/alpha.md)]| Property | Description | Setting Dependency | Default Value |
|---|
Relevant
Depending on the Graph Settings you use, Shader Graph can add the following Blocks to the Fragment Context:
[!include[](snippets/shader-graph-blocks/alpha-clip-threshold.md)] [!include[](snippets/shader-graph-blocks/alpha-clip-threshold-depth-postpass.md)] [!include[](snippets/shader-graph-blocks/alpha-clip-threshold-depth-prepass.md)] [!include[](snippets/shader-graph-blocks/alpha-clip-threshold-shadow.md)] [!include[](snippets/shader-graph-blocks/anisotropy.md)] [!include[](snippets/shader-graph-blocks/baked-back-gi.md)] [!include[](snippets/shader-graph-blocks/baked-gi.md)] [!include[](snippets/shader-graph-blocks/coat-extinction.md)] [!include[](snippets/shader-graph-blocks/coat-ior.md)] [!include[](snippets/shader-graph-blocks/coat-smoothness.md)] [!include[](snippets/shader-graph-blocks/coat-thickness.md)] [!include[](snippets/shader-graph-blocks/coat-mask.md)] [!include[](snippets/shader-graph-blocks/coat-normal-object-space.md)] [!include[](snippets/shader-graph-blocks/coat-normal-tangent-space.md)] [!include[](snippets/shader-graph-blocks/coat-normal-world-space.md)] [!include[](snippets/shader-graph-blocks/depth-offset.md)] [!include[](snippets/shader-graph-blocks/diffusion-profile.md)] [!include[](snippets/shader-graph-blocks/iridescence-coat-fixup-tir.md)] [!include[](snippets/shader-graph-blocks/iridescence-coat-fixup-tir-clamp.md)] [!include[](snippets/shader-graph-blocks/iridescence-thickness.md)] [!include[](snippets/shader-graph-blocks/iridescence-mask.md)] [!include[](snippets/shader-graph-blocks/haze-extent.md)] [!include[](snippets/shader-graph-blocks/haziness.md)] [!include[](snippets/shader-graph-blocks/hazy-gloss-max-dielectric-f0.md)] [!include[](snippets/shader-graph-blocks/lobe-mix.md)] [!include[](snippets/shader-graph-blocks/normal-object-space.md)] [!include[](snippets/shader-graph-blocks/normal-world-space.md)] [!include[](snippets/shader-graph-blocks/smoothness-b.md)] [!include[](snippets/shader-graph-blocks/specular-aa-screen-space-variance.md)] [!include[](snippets/shader-graph-blocks/specular-aa-threshold.md)] [!include[](snippets/shader-graph-blocks/specular-color.md)] [!include[](snippets/shader-graph-blocks/specular-occlusion.md)] [!include[](snippets/shader-graph-blocks/subsurface-mask.md)] [!include[](snippets/shader-graph-blocks/tangent-object-space.md)] [!include[](snippets/shader-graph-blocks/tangent-world-space.md)] [!include[](snippets/shader-graph-blocks/thickness.md)]| Property | Description | Setting Dependency | Default Value |
|---|
Graph Settings
Surface Options
[!include[](snippets/shader-properties/surface-options/surface-type.md)] [!include[](snippets/shader-properties/surface-options/rendering-pass.md)] [!include[](snippets/shader-properties/surface-options/blending-mode.md)] [!include[](snippets/shader-properties/surface-options/receive-fog.md)] [!include[](snippets/shader-properties/surface-options/depth-test.md)] [!include[](snippets/shader-properties/surface-options/depth-write.md)] [!include[](snippets/shader-properties/surface-options/cull-mode.md)] [!include[](snippets/shader-properties/surface-options/sorting-priority.md)] [!include[](snippets/shader-properties/surface-options/back-then-front-rendering.md)] [!include[](snippets/shader-properties/surface-options/transparent-depth-prepass.md)] [!include[](snippets/shader-properties/surface-options/transparent-depth-postpass.md)] [!include[](snippets/shader-properties/surface-options/transparent-writes-motion-vectors.md)] [!include[](snippets/shader-properties/surface-options/preserve-specular-lighting.md)] [!include[](snippets/shader-properties/surface-options/alpha-clipping.md)] [!include[](snippets/shader-properties/surface-options/use-shadow-threshold.md)] [!include[](snippets/shader-properties/surface-options/alpha-to-mask.md)] [!include[](snippets/shader-properties/surface-options/double-sided-mode.md)] [!include[](snippets/shader-properties/surface-options/fragment-normal-space.md)] [!include[](snippets/shader-properties/surface-options/receive-decals.md)] [!include[](snippets/shader-properties/surface-options/receive-ssr.md)] [!include[](snippets/shader-properties/surface-options/receive-ssr-transparent.md)] [!include[](snippets/shader-properties/surface-options/geometric-specular-aa.md)] [!include[](snippets/shader-properties/surface-options/ss-depth-offset.md)] [!include[](snippets/shader-properties/surface-options/base-color-parametrization.md)] [!include[](snippets/shader-properties/surface-options/energy-conserving-specular.md)] [!include[](snippets/shader-properties/surface-options/anisotropy-stacklit.md)] [!include[](snippets/shader-properties/surface-options/coat.md)] [!include[](snippets/shader-properties/surface-options/coat-normal.md)] [!include[](snippets/shader-properties/surface-options/dual-specular-lobe.md)] [!include[](snippets/shader-properties/surface-options/dual-specular-lobe-parametrization.md)] [!include[](snippets/shader-properties/surface-options/cap-haziness-for-non-metallic.md)] [!include[](snippets/shader-properties/surface-options/iridescence.md)] [!include[](snippets/shader-properties/surface-options/transmission.md)] [!include[](snippets/shader-properties/surface-options/specular-occlusion-mode-stacklit.md)] [!include[](snippets/shader-properties/surface-options/anisotropy-for-area-lights.md)] [!include[](snippets/shader-properties/surface-options/base-layer-uses-refracted-angles.md)] [!include[](snippets/shader-properties/surface-options/recompute-stack-and-iridescence.md)] [!include[](snippets/shader-properties/surface-options/honor-per-light-max-smoothness.md)]| Property | Description |
|---|
Distortion
This set of settings only appears if you set Surface Type to Transparent.
[!include[](snippets/shader-properties/distortion/distortion.md)] [!include[](snippets/shader-properties/distortion/distortion-blend-mode.md)] [!include[](snippets/shader-properties/distortion/distortion-depth-test.md)]| Property | Description |
|---|
Advanced Options
[!include[](snippets/shader-properties/advanced-options/specular-occlusion-mode.md)] [!include[](snippets/shader-properties/advanced-options/override-baked-gi.md)] [!include[](snippets/shader-properties/advanced-options/support-lod-crossfade.md)] [!include[](snippets/shader-properties/advanced-options/add-precomputed-velocity.md)]| Property | Description |
|---|
