ShadeGraph教程之节点详解8:UV Nodes

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

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

UV Nodes UV节点

与UV相关的节点。

Flipbook 图象序列

创建一个图像像素列,作为UV输入。序列中序列图的数量是由输入的WidthHeight决定的。当前显示第一个序列图是由输入参数Tile决定的。

这个节点经常用来创建贴图动画,通常用于粒子效果和sprite。方法是:将Time节点连到输入参数的Tile中,输出数据连接到Texture Sampler节点的UV输入参数中。

UV数据的(0,0)点是左下角。(0,0)点在预览窗口中显示为黑色。但是图像序列通常是从左上角开始,所以Invert Y参数默认是勾中的。可以通过设置Invert XInvert Y来改变图像序列的方向。

Polar Coordinates 极坐标

将输入的UV坐标转换成极坐标。在数学中,极坐标系是一种二维坐标系,其中平面上的每个点由参考点的距离和与参考方向的角度确定。

这个节点的结果是将输入参数UV的x通道转换为距输入Center值对应点的距离值,并将y通道转换为围绕该点的旋转角度值。

这些值可以分别通过输入参数Radial ScaleLength Scale进行缩放。

Radial Shear 径向剪切

将类似于波浪的径向剪切扭曲效果应用于输入参数UV。扭曲效果的中心参考点由输入参数Center决定,效果的整体强度由输入参数Strength决定。输入参数Offset可用于偏移结果的各个通道。

Rotate 旋转

将输入值UV根据中心点Center进行旋转,旋转的量由输入参数Rotation决定。旋转量的单位可以通过Unit下拉框选择角度Degrees或者弧度Radians。

Spherize 球面化

将类似于鱼眼镜头的球形扭曲效果应用于输入参数UV。扭曲效果的中心参考点由输入参数Center定义,效果的整体强度由输入参数Strength定义。输入参数Offset可用于偏移结果的各个通道。

Tiling And Offset 平铺和偏移

这个功能我们会经常用到,一般只要有贴图的材质上都会有Tiling And Offset。

将输入参数UV的值,通过Tiling和Offset改变平铺和偏移。

Triplanar

Triplanar 是通过世界空间投影生成UV和采样贴图的一种方式。输入贴图Texture会被采样3次,世界空间的每个x,y和z轴上进行一次采样,然后将结果信息平面投影到模型上,并由法线或表面角度进行混合。生成的UV可以通过输入参数Tile进行缩放,最终的混合强度可以通过输入参数Blend进行控制。可以通过输入参数PositionNormal来修改投影。这通常用于大型模型(如地形)的贴图,大型模型使用UV坐标时会出现问题或效率很低。

输入贴图的类型可以使用下拉菜单Type进行切换。如果设置为Normal,法线将转换到世界空间,因此可以构造新的切线,然后在输出之前将其转换回切线空间。

Twirl 扭曲

将类似于黑洞的旋转扭曲效果应用于输入的UV。扭曲效果的中心参考点由输入参数Center决定,效果的整体强度由输入参数Strength决定。输入Offset*可用于偏移结果的各个通道。

image.png

小结

本文讲解了ShaderGraph众多Node中的UV Nodes。你可以收藏本文作为一个工具库。本系列已更新完毕。

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

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



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

你可能感兴趣的:(ShadeGraph教程之节点详解8:UV Nodes)