Unity Shader Graph实验室能实现哪些复杂效果?
摘要:Unity2018 Shader Graph 实验室 Shader Shader Graph Unity Tips: -- 在shader forge和amplyfy Shader节点图形
Unity2018 Shader Graph 实验室
ShaderShader GraphUnity
Tips:
-- 在shader forge和amplyfy Shader节点图形化shader编程的诱惑下,unity官方终于在2018版本也推出了而自己shader节点可视化编程工具Shaderr Graph。本篇文章是对Shader Graph一些效果的尝试,建议学习shader的朋友也尝试下这些工具,对shader的理解会更加直观
-- 效果中自发光光晕是使用的PostProcess中bloom,须自行添加
-- 图看不清,右击在标签页中打开
-- 想要自发光更炫,Color属性节点开启HDR模式
目录
bilibili小电视
光剑
火焰卡牌
1.Bilibili小电视([]~( ̄▽ ̄)~*)
效果
BILIBILI
节点图
节点图
效果说明
该效果主要分为三个部分:
红色部分,通过一个纹理与一个颜色相乘来作为其基础效果。
紫色部分,边缘高光,通过一个菲涅尔节点和颜色相乘赋给自发光。
黄色部分,随时间的扭曲和剔除,通过Step阶梯点和Twirl扭曲节点实现,Noise节点辅助产生扭曲条纹状效果。
节点说明
名称说明
Fresnel
菲涅尔反射,简单来说就是表面与视角越是平行,则高光效果越明显 (Unity就不能出个中文文档吗,哭)http://api.unrealengine.com/CHN/Engine/Rendering/Materials/HowTo/Fresnel/index.html
Step
如果输入In大于等于输入Edge,返回1,否则返回0
Twirl
将类似于黑洞的旋转扭曲效果应用于输入的UV。扭曲效果的中心参考点由输入参数Center决定,效果的整体强度由输入参数Strength决定。输入Offset可用于偏移结果的各个通道。
Position
获取mesh的顶点或片段的位置。可选的空间有Object, View, World, Tangent。(我们使用该位置为世界坐标下的位置,作为Twirl的中心点位置)
Time
可以获取Unity中的时间值。
2.光剑(愿原力与你同在QAQ)
效果
sword
节点图
enter description here
效果说明
该效果主要分为三个部分:
红色部分,通过Positon的object即模型坐标下的Y方向Step来获得溶解效果。
紫色部分,通过Noise,时间节点作用于UV与模型Position相加,给与模型沿着Y轴抖动的效果。
黄色部分,一个简单的自发光。
节点说明
名称说明
Position
区别于上次,这次我们使用的Object坐标下,即模型空间下获取模型自身的顶点位置属性
Split
分割,将一个多维向量分割成多个1维的数值。如果输入的向量小于4维,不够的维度会使用默认值分别是 (0, 0, 0, 1)。
Gradient Noise
渐变噪点,基于输入的UV生成一个渐变噪点图(Perlin噪点)。Scale可以控制噪点图的大小。
Tiling And Offset
平铺和偏移,这个功能我们会经常用到,一般只要有贴图的材质上都会有Tiling And Offset。将输入参数UV的值,通过Tiling和Offset改变平铺和偏移。
3.地狱之门(愿火焰进化一切)
效果
Fire
节点图
火焰
效果说明
UV偏移与发光不在赘述,该效果的要点是边缘部分的与原来颜色叠加,这样火焰的边缘亮度更高,下过更好。这里我们主要通过不同Step后的图作差值来获取边缘。
