转载作品

学习如何使用ASE特效Shader

一只大眼睛 发表于   2019-12-18 11:09:58
5378 3

来自Amplify Creations团队的Ricardo Teixeira对Unity的Amplify Shader编辑器进行了概述,并讨论了一般的着色器工作。


什么是放大着色器编辑器         

  

   ASE是受专业开发工具启发的Unity社区驱动的着色器编辑器。我们发现,大多数编辑器在其概念形成时都有一些不足,并且无法以任何可靠的方式进行扩展,从而允许用户根据其特定的管道需求对其进行调整。鉴于我们在图形计算方面的技术背景和专业知识,我们开始开发自己的愿景,即未来证明着色器编辑器可以是什么样的,以努力提供丰富和完整的功能集。 

        

     对于初学者和专业人士来说,我们的编辑器是基于Unity自己的UI/UX约定提供一个熟悉且一致的开发环境而设计的,易于使用。无论您希望创建自己的游戏着色器、与Sinespace兼容的内容,甚至是在资产商店围绕着色器开发建立业务,我们的社区和团队都会为您服务。  

       

     我们的编辑器能够为传统的内置渲染器和新的可脚本渲染管道(HD/LW/URP)创建着色器。我们提供了几种材质球类型和示例,但我们的开放方法允许用户使用我们的自定义节点API和模板系统扩展其功能。


 着色工作        

      对初学者来说,编程着色器可能很困难。最初的学习曲线无疑会让许多艺术家感到沮丧,因为他们可能了解事物的工作原理,但无法将自己的想法转化为功能代码。节点编辑器,如ASE,通过允许在功能着色器基础上进行实验和迭代,而无需编写一行代码,从而打破了这些障碍。        

     您不一定需要成为材质球专家,但为了充分利用任何材质球编辑器,用户应该学习一些基本概念。

着色器开发书籍或在线资源是熟悉所用术语的好方法。材质球、材质、甚至纹理以及它与照明系统的关系都是在使用编辑器之前应该学习的基本概念。          

    任何具备基本统一理解的人现在都可以开始创建简单的着色器,而不管他们的专业领域是什么。我们提供一个简单的初学者指南,教用户如何使用基本技术来创建有趣和有用的效果,如纹理混合或动画平移。

编辑器本身很容易学习,用户界面简单且不引人注目,因此您可以完全专注于材质球。   

   

         简单的颜色着色着色器示例:

      

5dcd11247f1a3[1].gif


在这里开始您的着色器开发之旅:放大着色器编辑器初学者系列      

        有一点,你需要深入挖掘底层数学,以解决高级主题,但谢天谢地,着色器开发概念是有点普遍。有很多知识可以帮助你提高技能,不要回避书籍,甚至是针对其他开发环境的教程,比如虚幻的编辑器材料编辑器。       

      温习数学永远不会太迟,塞巴斯蒂安·拉格的频道和类猫编码是极好的资源。对于初学者来说,除了我们最喜欢的一本书“Unity Shader Cookbook”之外,我们推荐的还不够多。         

     使用单个纹理的材质球解剖:

widen_620x0[1].jpg


     等效放大着色器编辑器:

widen_920x0[1].jpg

 如何工作            

  编辑器通过解释节点网络和自动生成功能着色器代码来运行,而不管您创建什么。这意味着您可以迭代而不会遇到通常与从头开始编程自己的着色器相关联的语法错误;您可以自由尝试。

有一些例外,但编辑器将尽其所能警告您在生成实际着色器之前可能出现的问题。            

  使用ASE创建的着色器与手动编程的着色器一样工作,不需要编辑器,这使得它们很容易分发。

共享代码片段,或者节点网络,也被称为节点网络,就像复制和粘贴链接一样简单!

5dcd112366484[1].gif

我们通过包含一组模板来简化材质球的创建,这些模板在Unity中模拟最常用的材质球,例如默认的标准金属/镜面反射材质球或新的SRP HD变体。

用户可以快速开始处理重要的事情,而不必担心幕后发生的事情。由于编辑器的开放性和可扩展性,此模板系统可用于添加其他更适合您的项目要求的明暗器类型;但是,这是一个高级过程,对于大多数用户来说是不必要的,特别是在开始时。

              交互和编辑器的性能对ASE的独特性起着很大的作用;它的导航是平滑和响应的,而快捷方式是简单和容易进入的。它的用户界面简洁明了,并且易于操作多个编辑器窗口,这使得它能够无缝地适应您的工作环境,而不是将您从工作环境中拉出来。

5dcd1128730b1[1].gif

                                              设置材质球效果的动画 

             有两种技术用于设置材质球效果的动画,一些最常见的起点是UV变换平移/缩放效果、顶点变换、基于时间的值更改(例如脉动/闪烁效果)、值之间的警报或精灵工作表动画。

              最好在深入到实际的材质球构造之前分解每个效果,仔细识别需要构造的类型并提前将其简化。通过对余烬使用基于时间的脉动效果和lerp在规则和燃烧的木材之间混合,可以轻松实现灼热的火焰效果;在上面添加一个额外的发射层和bloom post fx,您就拥有了一个非常酷的材质。

5dcd1145f2447[1].gif



有时候,你只需要一个简单的平移效果就可以得到有趣的结果。

以下面的示例为例,我们只是垂直平移展开模型的UV位置。

5dcd11649419a[1].gif

这是一个简单但强大的技术,允许您创建各种各样的fx,如下面的ASE雷达着色器由Jamie Degen制作。


你也可以设置材质属性的动画,这是一个很好的方法,可以在你开始的时候快速得到结果。在这个由Gil Damoiseaux创建的社区示例中,他正在变形网格并将发光的金属色辉光覆盖在顶部。变形由着色器处理,但可以设置材质属性的动画,而不是手动控制效果。


一旦你习惯了材质球的开发,试着结合不同的技术。下面的火焰效果使用了平移、基于时间的值更改、顶点变形、基于位置的变化和烟雾/火花的额外粒子的组合。




一旦你习惯了材质球的开发,试着结合不同的技术。下面的火焰效果使用了平移、基于时间的值更改、顶点变形、基于位置的变化和烟雾/火花的额外粒子的组合。




当组合多个效果时,着色器可以很快失控,考虑使用尽可能少的指令和纹理并避免条件语句是很重要的。性能最终将取决于操作的复杂性,所以一定要有利于乘法除法,并考虑在下端设备上使用较低精度的值

         在Sinespace中使用ASE              如果您已经使用了ASE,那么在创建Sinespace内容时,您将非常熟悉,因为没有其他步骤可以让您的着色器使用它。自从Sinespace面世以来,我们的不和谐社区不断增加,这是一个寻找其他Sinespace ASE着色器创建者的好地方。

         有很多你可以做的只有使用阴影!我们的ASE用户之一,Xulain@SineSpace,一直在为自己的SineSpace区域开发一个假腐蚀系统!



没有标签
确定
评论(3)
archer
学习了!!
回复
2020-04-15 10:16
224
视频B站链接:av80617375
回复
2019-12-25 17:16
VFX丶H
6666666666666
回复
2019-12-30 22:49
板砖
大佬能放个国内的网站吗,这个看不到啊....
回复
2019-12-24 16:17
224
视频没什么内容就是一个宣传的视频,待会站审核过了我把av号发出来。
回复
2019-12-25 17:07
没有更多啦~
  • 扫码加入QQ群 或搜索QQ群号: 572860166
  • 扫码关注公众号 或微信搜索: cokey游戏特效