服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C# - Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

2022-11-25 12:17陈言必行 C#

通过Twirl 旋转节点对Gradient Noise 梯度噪声节点进行操作,就可得到一个旋转的旋涡效果。具体实现代码跟随小编一起通过本文学习下吧

若你的工程还没有进行基础配置,请查看我的博文Unity 之 ShaderGraph入门使用详解,按照步骤操作完成配置即可,还能顺便学习一下基础操作流程哦~
本文手把手教你制作旋涡效果,入门级教程,还不快动手试试?

一,最终效果展示

老规矩,直接上效果图:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

 

二,创建PBRGraph

在Project面板右键 --> Create --> Shader --> PBRGraph:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

重命名:RPAShaderGraph(随意)

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

双击RPAShaderGraph打开编辑界面

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)


 

三,实现原理介绍

通过Twirl 旋转节点对Gradient Noise 梯度噪声节点进行操作,就可得到一个旋转的旋涡效果。

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

然后我们添加时间节点调整Twir的偏移量,让其自动转起来,这个动态的旋涡效果基本就实现了。

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)


 

四,完整效果实现

就接着三种的效果,继续说吧:
在“PBRGraph”面板空白处 右键 --> 选择“Create Note” 创建Twirl(直接搜索名字即可)。
同理创建“Gradient Noise” 和 “Time” 节点,然后将其输入输出连接如下图:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

现在我们已经有了一个动态的旋涡,在一中的效果图上我们可以看到,它并不是黑白色的,下面修改一下颜色:

创建“Color”颜色节点 和 “Multiply”乘法节点,我们将“Gradient Noise”节点的输出 和 “Color”颜色节点的输出都连接到“Multiply”乘法节点的输入上:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

然后修改下“Color”节点的颜色,就可以得到一个其他颜色的旋涡了:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

接下来,将带有颜色旋涡的“Multiply”乘法节点输出,连接到”PBR Master”主节点的Albode输入上,即可在预览图上看到旋涡的效果上了:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

现在预览效果上显示的是一个正方形的,这个样子看起来有点丑奥~ 而且和想要的效果也不一致,那怎么办呢?
添加一个圆形的遮罩不就行了:添加“Ellipse” 圆形节点,将其输入节点的宽高调整为0.8,然后将输出节点,连接到”PBR Master”主节点的Alpha输入上:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

然后在点击Master 主节点的“设置”按钮,将“Surface”属性设置为“Transparent” 透明的,即可得到被遮罩的效果了:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

其实这时的旋涡效果以及完成了,下面我们添加两个变量,来对旋转时间和旋涡的大小进行控制,这样我们就可以在材质球上进行数值修改,从而方便的得到想要的效果。

在“Blackboard” 上创建一个“Verctor1”的变量,将其拖拽到空白处,并赋值给“Twirl”的“Strength”输入,操作步骤如下:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

同理我们在创建一个“Verctor1”变量,然后创建一个“Multiply” 乘法节点,将其“Time”和"V1"相乘后,输出给“Twirl”的“Offset”输入:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

至此全部制作就完成了,完整RPA Graph如下:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

PS:注意需要将主节点的“Surface”属性设置为“Transparent”透明的,上图并没有体现出来哦~


 

五,应用到场景中

在“RPA Graph” 编辑界面右上角,点击“Save Asset” 保存一下。然后创建材质球,将其材质选定为刚刚保存的这个“RPAShaderGraph”。

这里提供一个快捷创建材质球的方法,鼠标选中我们保存的“RPAShaderGraph”文件,然后右键创建材质球,这样我们创建出来的材质球,就自动使用这个Shader了。

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

最后一步,创建“Plane”将其材质赋值为上面创建的材质球,可以得到最终效果,这时我们可以编辑之前设置好的“Streght”和“Time”属性的值,就可以直接调节想要的效果了:

Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

到此这篇关于Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)的文章就介绍到这了,更多相关Unity ShaderGraph旋涡传送门内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/Czhenya/article/details/118615271

延伸 · 阅读

精彩推荐
  • C#C#字典Dictionary的用法说明(注重性能版)

    C#字典Dictionary的用法说明(注重性能版)

    这篇文章主要介绍了C#字典Dictionary的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    Real_JumpChen5032022-11-10
  • C#c# 常见文件路径Api的使用示例

    c# 常见文件路径Api的使用示例

    c#编程中经常有遇到要处理文件路径的需求,本文分别讲述了如何从程序下面的文件和临时目录下的文件去使用路径api,感兴趣的朋友可以了解下...

    RyzenAdorer6512022-11-17
  • C#C# IQueryable<T>揭开表达式树的神秘面纱

    C# IQueryable<T>揭开表达式树的神秘面纱

    这篇文章主要介绍了C# IQueryable<T>表达式树,对IQueryable<T>感兴趣的同学,必须要仔细看一下...

    农码一生10592022-11-15
  • C#C#如何添加PPT背景

    C#如何添加PPT背景

    这篇文章主要为大家详细介绍了C#如何添加PPT背景,添加纯色背景、渐变色背景、图片背景等,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    E-iceblue12132022-02-27
  • C#C#实现Json转DataTable并导出Excel的方法示例

    C#实现Json转DataTable并导出Excel的方法示例

    这篇文章主要介绍了C#实现Json转DataTable并导出Excel的方法,结合实例形式总结分析了Json转换DataTable,以及DataTable导出Excel相关操作技巧,需要的朋友可以参考下...

    东边的小山6842022-03-09
  • C#Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

    Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

    通过Twirl 旋转节点对Gradient Noise 梯度噪声节点进行操作,就可得到一个旋转的旋涡效果。具体实现代码跟随小编一起通过本文学习下吧...

    陈言必行3242022-11-25
  • C#C#视频转换类分享

    C#视频转换类分享

    这篇文章主要为大家分享了C#视频转换类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    孤者自清7312022-01-11
  • C#Win10 系统下VisualStudio2019 配置点云库 PCL1.11.0的图文教程

    Win10 系统下VisualStudio2019 配置点云库 PCL1.11.0的图文教程

    这篇文章主要介绍了Win10 系统下VisualStudio2019 配置点云库 PCL1.11.0的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定...

    点云侠8332022-09-24