您想找什么?
Engine & platform

Unity 6 中的新着色器图形可生产着色器

BEN CLOWARD Senior Technical Artist
Jul 9, 2024|7:09 最小
着色器图形制作就绪着色器示例

Shader Graph 团队非常高兴地宣布,我们发布了最新的示例集,现在可以导入2022 LTS和即将发布Unity 6 版本。这组示例包含超过 25 个着色器图资产和数十个子图,可直接用于您的项目中。示例着色器可在 HDRP 和 URP 中使用。

我们使用这组样本有两个主要目的:

  1. 通过提供一套可随时使用的着色器,让我们的用户在着色器创建方面有一个良好的开端。
  2. 提供范例,用户可以根据自己的需要进行扩展或修改。

本示例集可帮助您更快地实现所需的着色器效果,而无需从头开始。我们还提供了一个分步教程,说明如何将这些资产组合起来以创建逼真的环境。通过该教程,您可以了解着色器如何在上下文中协同工作。

样本内容

以下是 "制作就绪着色器 "软件包的内容明细:

HDRP 和 URP 光着色器
HDRP 和 URP 光着色器
HDRP 和 URP 光着色器

URP 和 HDRP 都带有基于代码的着色器。每个 SRP 最常用的着色器称为 Lit。对于使用它的项目来说,它通常适用于游戏中的几乎所有网格。HDRP 和 URP 版本的 Lit 着色器功能齐全。不过,有时用户希望添加额外的功能以实现特定的外观,或删除未使用的功能以优化性能。对于不熟悉着色器代码的用户来说,这可能非常困难。

因此,我们在本示例包中包含了用于 URP 和 HDRP 的 Lit 着色器的Shader Graph版本。用户可以复制相应的着色器图形光着色器,然后将当前引用代码版本光着色器的任何材质更改为着色器图形版本。所有材质设置都将正确应用并继续工作。然后,他们就可以根据需要更改着色器图形版本。

贴花
贴花着色器
贴花着色器

贴花允许您对场景中的特定位置进行局部材质修改。比如在墙上涂鸦或在树下撒落叶。但贴花的用途远不止于此。在这些示例中,我们可以看到贴花让物体看起来湿漉漉的,让表面看起来有流水划过,投射出水的腐蚀效果,以及将特定材料混合到其他物体上。

地形细节
 地形细节
地形着色器

这组着色器专为应用于地形(如草地、杂草、灌木丛、鹅卵石等)的网格而设计。要了解更多信息,请阅读有关详细信息的地形文档。细节网格对着色器有一些特殊要求。首先,由于地形上使用了大量这些网格,它们的着色器必须尽可能快速高效。这主要意味着保持较低的纹理采样数量,并在顶点着色器而不是像素着色器中完成更多工作。其次,由于这些网格会在特定距离停止渲染并弹出,因此我们使用了一种方法来溶解它们,以防止出现刺眼的弹出效果,从而使它们被移除的痕迹不那么明显。在每个着色器中,你都会看到一个 "距离遮罩",用于在网格停止渲染前在一定距离内溶解网格。

岩石着色器
岩石着色器
岩石着色器

这是一款功能齐全的模块化岩石着色器,小到鹅卵石、巨石,大到悬崖峭壁,都可以使用它。它的功能可根据应用情况开启或关闭。每个特征都封装在一个子图中,因此很容易移除不需要的特征。您还可以在模块链中添加新功能。

水着色器
水着色器
水着色器

样本集包含四种不同的水着色器--湖水、动画池塘水、溪水和溪流瀑布。每款游戏都使用了反射、折射、使用滚动法线贴图的表面波纹和深度雾。它们还为每种水质提供了独特的附加功能。

天气影响
天气影响
天气影响

该样本包含一整套与天气相关的子图(雨和雪),可根据对象类型的要求进行混合和匹配。雨水效果包括物体顶部的雨滴、从侧面滴落的雨滴,以及可在平面上动态积聚的水坑,包括雨水和风的波纹。

森林溪流教程
森林蒸汽教程
森林蒸汽教程

该示例集还包括一个分步教程,展示了如何将水着色器、贴花、岩石和地形细节网格以及其他一些 Unity 功能结合起来,创建一个森林溪流环境。该教程展示了如何将所有内容组合在一起,以及如何将样本包资产一起用于创建环境。

使用软件包管理器安装新的样本资产。

  1. 在编辑器中,打开软件包管理器
选中软件包管理器的窗口菜单
选中软件包管理器的窗口菜单

2.在软件包管理器窗口中,选择着色器图形软件包。

在 "软件包管理 "中选择着色器图形
在 "软件包管理 "中选择着色器图形

3.选择样本选项卡。

按下着色器图形包中样本部分的导入按钮
按下着色器图形包中样本部分的导入按钮

4.最后,选择生产就绪导入按钮,将新的生产就绪样本集导入到项目中。

完成这些步骤后,节点参考资产将显示在项目中的Assets/Samples/Shader Graph/<your version>/Production Ready Shaders 下。

项目窗口显示可在何处找到 "生产就绪着色器 "示例
项目窗口显示可在何处找到 "生产就绪着色器 "示例

导入样本后,打开与您使用的渲染管道(高清渲染管道(HDRP)或通用渲染管道(URP))相对应的场景:

  • 资产/样本/着色器图/<您的版本>/制作就绪着色器/场景/URPProductionReadyShaders
  • 资产/样本/着色器图/<您的版本>/制作就绪着色器/场景/HDRPProductionReadyShaders
打开场景文件夹中的 URP 或 HDRP 示例场景
打开场景文件夹中的 URP 或 HDRP 示例场景

打开场景后,选择层次面板顶部的着色器图形功能示例展示资产,然后按照检查器中的引导进行操作。

在层次结构面板中选择着色器图形制作就绪着色器展示资产
在层次结构面板中选择着色器图形制作就绪着色器展示资产

您可以使用样本下拉框选择样本并跳转到场景中的该位置。

样品展示资产
样品展示资产

Unity 将继续为 Shader Graph 添加更多样本,并在未来几个月内推出更多样本包。这些将帮助您更快地学习 Shader Graph,了解如何设置特定功能,并利用预制子图和模板更快地创建新的着色器。我们希望您会喜欢使用它们。

这是一套深厚而丰富的样本集。我们希望您能从中获得乐趣,并利用它加快自己的着色器创建过程。

我们很想听听您对这些样本的看法和印象,请在着色器图形论坛上告诉我们您的想法。