[Unity2018.2]ShaderGraph更新详解

洪流学堂,让你快人几步!本文首发于洪流学堂微信公众号。

洪流学堂公众号回复节点,获取ShaderGraph节点详解PDF文件(带目录)。

ShaderGraph 2018.2 更新详解

在2018.1中,Shader Graph作为Unity的新功能,以预览版的形式呈现。通过ShaderGraph可以直观地构建着色器。可以在图形界面中创建和连接节点,而不需要编写代码。图中的每个节点都可以对更改即时反馈,大大降低了编写着色器的门槛。

Unity2018.2也对ShaderGraph(3.0.0)进行了很多优化和改进,包括:

高清渲染管道(HDRP)支持

Shader Graph现在支持PBR和Unlit主节点的HDRP。使用ShaderGraph构建的着色器可与LWRP和HDRP一起使用。

[Unity2018.2]ShaderGraph更新详解_第1张图片

顶点位置

现在可以通过PBR和Unlit主节点上的Position栏位修改顶点位置。默认情况下,此节点的输入是对象空间位置。此栏位应该输入给定顶点的绝对本地位置。某些节点(例如程序形状Procedural Shapes)在顶点着色器中不可行。此类节点与此栏位不兼容。

[Unity2018.2]ShaderGraph更新详解_第2张图片

主节点设置

主节点的设置现在可在一个小窗口中使用,可以打开和关闭该窗口来更改着色器的各种渲染设置。

[Unity2018.2]ShaderGraph更新详解_第3张图片

属性引用名称和公开状态

现在可以编辑属性的引用名称,从而更容易从脚本引用着色器属性。选择属性并在Reference旁边设置新名称。如果要重置为默认名称,请右键单击Reference,然后选择 Reset Reference。

在属性窗口中,现在还可以切换Exposed复选框,来设置属性是否公开。

[Unity2018.2]ShaderGraph更新详解_第4张图片

可编辑路径

现在可以更改着色器图和子图的路径。更改着色器图形的路径时,将修改其在着色器选择列表中的位置。更改子图的路径时,它将在节点创建菜单中具有不同的位置。

[Unity2018.2]ShaderGraph更新详解_第5张图片

[Unity2018.2]ShaderGraph更新详解_第6张图片

Is FrontFace节点

[Unity2018.2]ShaderGraph更新详解_第7张图片

使用此节点,你可以根据给定片段的朝向标识更改图形输出。如果当前片段是正面的一部分,则节点返回True。对于背面,节点返回False。注意:此功能需要在主节点上启用双面

渐变节点

[Unity2018.2]ShaderGraph更新详解_第8张图片

通过两个新节点添加了渐变功能。Sample Gradient节点使用给定的Time参数对渐变进行采样。您可以在渐变栏位控件视图上定义此渐变。Gradient Asset节点定义了一个渐变,可以使用不同的时间参数对多个Sample Gradient节点进行采样。

Texture3D和Texture2D数组

[Unity2018.2]ShaderGraph更新详解_第9张图片

通过两个新属性类型和四个新节点扩展了Unity对Texture类型的支持。可以在着色器图中定义和采样Texture 3D和Texture 2D Array类型资源。

Texture2D LOD节点

这个新节点为Texture 2D Sample添加了LOD功能。Sample Texture 2D LOD使用与Sample Texture 2D相同的输入和输出栏,但包括通过Vector1输入参数调整细节级别的输入。

显示生成的代码

现在可以看到任何特定节点的生成代码。右键单击该节点,然后选择Show Generated Code。代码段将在Unity的代码编辑器中打开。

小结

本文讲解了ShaderGraph 2018.2更新的内容,此外ShaderGraph节点详解PDF文件也已更新到此版本。

洪流学堂公众号回复节点,获取ShaderGraph节点详解PDF文件(带目录)。

你有没有饱受shader折磨的同学?你可以把今天的内容分享给他,或许你能帮到他。



《郑洪智的Unity2018课》,倾尽我8年的开发经验,结合最新的Unity2018,带你从入门到精通。

你可能感兴趣的:(Unity3D,洪流学堂,-,Unity专栏)