400-650-7353
您所在的位置:首页 > IT干货资料 > unity > 【Unity基础知识】ASE制作燃烧溶解效果

【Unity基础知识】ASE制作燃烧溶解效果

  • 来源:Unity干货资料
  • 2021-09-08 13:45:43
  • 阅读()
  • 分享
  • 手机端入口

大家好,我是优就业小优,又和大家见面了。今天我们来讲一下,如何用Amplify

Shader Editor插件制作一个燃烧溶解的效果。如下效果:

一、首先我们实现消融的效果

首先需要设置一下主节点的属性

渲染类型(Render Type)要选成透明切口(Transparent Cutout)

渲染队列(Render Queue) 要选成透明度测试(Alpha Test)

遮罩值(Mask Clip Value) 要选成0.5(可手动调节)

当主节点的属性设置成如上后,你会发现主节点的 opacity mask变得可选了。这个就

是透明度遮罩,如果这个值给的大于mask clip value(目前是0.5)那么这个像素就可显示,如果小于这个值(0.5)那么这个像素就不显示。我们知道,Alpha混合运算量是比较大的,但是在实际游戏效果中,有些物体的Alpha的值如果很小,在远处就是看不见的,好不容易运算出来,玩家又看不见,那还不如不算,直接裁剪掉。所以这时候就用上了Alpha Test.如果小于某个Alpha值就直接过滤。省去后面的运算。


这里加了一个遮罩图,是因为我们要实现一个溶解的效果,就是有些像素显示有些像素不显示,就要每个像素不同的opacity mask值,所以用一个噪声图来给每个像素不同的mask值。

接着我们给遮罩图(Dissolve Guide)一个可控的变量值 (Dissolve Amount),这个值的类型是Property,那么意味着我们可以在C#代码里控制它。它的值如果是0,那么我们希望物体有局部消融,如果是1那么我们希望物体全部消融。参数含义如下:

One Minus:节点就是一个翻转节点,在这里就是1-DissolveAmount。

Remap节点:将其输入上设置的值从(Min Old, Max Old)范围转换为由(Min New, Max New)定义的新值。这里我们想把1-DissolveAmount的值从---0的范围变

成-0.6—0.6的范围。

为什么要这样呢?因为我们原先遮罩贴图输出的颜色值的某一通道比如R通道,输出的值的范围是0--1,然后Dissolve Amoun 的值经过翻转后变成了-1--0。这两个相加的范围就是-1到1,但是我们这里opacity mask值需要的范围,0-1。那么我们就需要把DissolveAmount的范围调整为-0.6-0.6,这样和如果遮罩图的单一通道颜色值的是1,相加后是0.4也是小于0.5的。这样就能实现全部消融的效果。

文章“【Unity基础知识】ASE制作燃烧溶解效果”已帮助

>>本文地址:https://www.ujiuye.com/zhuanye/2021/69966.html

THE END  

声明:本站稿件版权均属中公教育优就业所有,未经许可不得擅自转载。

1 您的年龄

2 您的学历

3 您更想做哪个方向的工作?

获取测试结果
  • 大前端大前端
  • 大数据大数据
  • 互联网营销互联网营销
  • JavaJava
  • Linux云计算Linux
  • Python+人工智能Python
  • 嵌入式物联网嵌入式
  • 全域电商运营全域电商运营
  • 软件测试软件测试
  • 室内设计室内设计
  • 平面设计平面设计
  • 电商设计电商设计
  • 网页设计网页设计
  • 全链路UI/UE设计UI设计
  • VR/AR游戏开发VR/AR
  • 网络安全网络安全
  • 新媒体与短视频运营新媒体
  • 直播带货直播带货
  • 智能机器人软件开发智能机器人
 

快速通道fast track

近期开班时间TIME