ShaderGraph简介 - 2019.3

Tutorial

Beginner

+0XP

20 mins

(51)

Unity Technologies

ShaderGraph简介 - 2019.3

在Unity的早期版本中,创建专用材质的唯一方法是对自定义着色器进行编程或使用外部插件。随着2018年版本的发布,Unity现在拥有了自己的原生Shader Graph,可用于通过节点来构建外观复杂的材质。

与在编辑器中编写代码、保存、编译和测试的过程不同,Shader Graph可实时显示材质的状况,从而允许您随时进行更改和试验。

Languages available:

1. 创建图形和第一个节点

如果您使用的是Unity 2018.1,请单击此处。

1. 在“Project”窗口中,创建一个名为“Shader Graph”的新文件夹。

2.在“Project”窗口中单击右键,然后从“Create”弹出菜单中导航到“Shader”并选择“Unlit Graph”。“Project”窗口中将生成一个新的Shader Graph
(图01)。

3.将新的Shader Graph命名为“CheckerShader”。

4.双击“CheckerShader”以打开“Shader Graph”窗口。

5.将“Shader Graph”窗口停靠在“Project”窗口的后面。

6.在工作区中单击右键或按空格键,然后选择“Create Node”(图02)。

7.在“Create Node”窗口的顶部,搜索2D并选择“Texture 2D Asset”(图03)。

8.对“Sample Texture 2D”重复此过程(图04)。

9.在“Texture2D Asset”底部的纹理位置处,单击“Radio”按钮,然后搜索所需的纹理。

10.单击并拖动“Texture2D Asset”中间的Out(T)圆圈以拉出连接线。

11.将连接线拖到“Sample Texture 2D Texture(T)”输入(图05)。

2. 构建图形

1.在两个节点之间的工作区内单击左键并拖动,以选定两个节点。

2.按CTRL + D (Windows)或Command + D (MacOS)进行复制。将它们移动到另外两个节点的下方。

3.在第二个Texture2D Asset节点中,搜索并应用要混合的辅助纹理,例如渐变纹理(图06)。

5.创建一个新节点,这次选择“Tiling and Offset”。

6.将“Tiling and Offset Out(2)”节点拖到“Checker Sample 2D”节点。

7.将“Tiling and Offset Tiling(2)”输入节点的X和Y均设为3(图07)。

3. 混合纹理

1.创建一个“Divide”节点。

2.将“Checker Sample 2D”节点的A(1)输出拖到“A(1) Divide”节点的输入。

3.将“Divide”节点的B(1) X输入设置为20(图08)。

4.创建一个“Blend”节点。

5.将“Divide Out(1)”的输出连接到第一个“Blend Base(1)”输入。

6.将“Gradient Sample Texture2D A(1)”的输出连接到第二个“Blend Base(1)”输入(图09)。

4. 添加颜色和连接着色器

1.创建一个“Color”节点。

2.将“Color”节点设置为亮青色,并将模式设置为“HDR”。

3.创建另一个“Blend”节点。

4.将第一个“Sample Texture2D”节点的RGBA(4)输出连接到新“Blend”的第一个Base(4)节点。

5.将“Color Nodes Out(4)”的输出连接到“Blends”的第二个Base(4)(图10)。

6.将“Blend”节点模式设置为“Darken”(图11)

7.将“Blue Blend Nodes Out(4)”的输出拖到“Unlit Masters Color(3)”输入。

8.将“Gradient Blend Nodes Out(4)”的输出拖到“Unlit Masters Alpha(1)”输入。

9.点击“Unlit Master”节点右上角的“Cog”,并将“Surface”设置为“Transparent”。

10.在“ Shader Graph”窗口的左上角,单击“Save Asset”(图12)。

5. 总结

Shader Graphs的功能非常强大,并且能够变得非常复杂。它有许多节点可供选择。在了解有关如何创建Shader Graphs的基础知识后,可试着创建自己的Shader Graphs。

Complete this Tutorial