2022 LTS 中的新 Shader Graph 功能示例

Shader Graph 团队很高兴地宣布发布我们最新的一组样本,现在可以在 2022 LTS 和 Unity 6 预览版 (2023.3) 中导入。
通过此示例集,我们的目标是提供如何 使用 Shader Graph实现各种效果和技术的示例。如果您想向着色器添加某种效果,它通常以数学方程式或代码的形式在线提供 - 但对于某些人来说,这两者可能都是遥不可及的。我们希望让您更轻松地实现您想要的效果。
视差映射、内部立方体映射、角度混合、流动映射和自定义照明等着色器功能只是该套件中 30 多个不同功能示例中的五个。虽然这些示例没有提供完整的着色器解决方案,但它们确实向您展示了如何创建特定的效果,并且大多数都整齐地封装在子图中,因此可以轻松地将它们拖放到您自己的着色器中。
以下是样本类别的完整列表。
混合面具:这组混合蒙版子图包括高度混合、角度混合、相机距离混合和高度混合。

条件分支:根据您使用的渲染管道和选择的质量级别,找到两个如何分支着色器的示例。

自定义插值器:这提供了一个如何通过将操作移到顶点阶段来提高性能的说明,包括一些在按顶点计算时效果不佳的效果的说明。

自定义照明:你们中许多人都要求一种自定义 Shader Graph 中照明工作方式的方法,以便降低照明渲染成本或为项目实现独特的艺术风格。这些示例展示了如何做到这一点,并包括 PBR 照明、简单照明和卡通着色器的示例。

详细映射:该套件包括三种不同的技术,使用细节映射为材质应用更多细节:颜色细节、正常细节和完整材质细节。

程序噪声和形状:与使用纹理贴图相比,程序化生成图案通常更具成本效益。此类别包含如何程序化地生成砖块图案的示例、用于生成六边形网格的子图以及一组有符号距离场形状。

Shader Graph 功能示例:Shader Graph 有几个难以掌握的功能,例如子图下拉菜单和基于输入连接的分支。本节包含如何使用这些功能来提高子图的实用性的示例。

UV投影:大量功能均基于 UV 坐标的操作,包括翻书混合、流动映射、内部立方体映射、纬度经度投影、matcap 或球体投影、视差映射和三平面投影。本节包括所有这些效果。

顶点动画:当大多数人想到 Shader Graph 时,他们会想到像素着色器,但 Shader Graph 也可以使用顶点阶段为顶点设置动画。这些示例包括飘扬的旗帜、弯曲变形器、面向摄像机的广告牌效果、Gerstner 波浪以及完全在 Shader Graph 中构建的功能齐全的粒子系统。

使用包管理器安装新的示例资产。
在编辑器中,打开 包管理器。

2.在包管理器窗口中,选择 Shader Graph 包。

3.选择 “示例”选项 卡。

4.最后,单击 “功能示例” 部分中的“导入”按钮,将新的示例集带入您的项目。
完成这些步骤后,功能示例资产将显示在你的项目的 Assets/Samples/Shader Graph/<你的版本>/Feature Examples下。

导入样本后,首先在场景文件夹中打开与您正在使用的渲染管线(高清渲染管线或 HDRP、通用渲染管线或 URP 或内置渲染管线)相对应的场景。

场景打开后,在 Hierarchy 面板中选择 Shader Graph Feature Samples Showcase 资产,然后按照 Inspector 中的导览进行操作。


您可以使用样本下拉框选择一个样本并跳转到场景中的该位置。
我们将继续向 Shader Graph 添加更多样本,并且在接下来的几个月中我们还会推出更多样本包。这些将帮助您更快地学习 Shader Graph,了解如何设置特定功能,并使用预制的子图和模板更快地创建新的着色器。我们希望您会喜欢使用它们。
- Shader Graph 基础知识
- Shader Graph 文档
- Unity 学习 教程
这是一个非常深度和丰富的样本集。我们希望您在探索过程中能玩得开心,并利用它来加速您自己的着色器创建过程。
我们很乐意听到您对这些样本的想法和印象——请在 Shader Graph 论坛中告诉我们您的想法。