千锋教育-做有情怀、有良心、有品质的职业教育机构
一.前言
一般我们在游戏中实现火焰特效,都是通过粒子特效,虽然效果好,但是用粒子特效,如果粒子数量过多,会占用大量cpu性能,甚至导致卡顿掉帧。所以我打算用shader实现一个火焰效果,把cpu的压力转移的gpu上去。而且效果更好。
先看效果:
二.实现逻辑
实现这个效果主要分为3个部分
1.实现火焰的波动效果
通过一个点状图,分别缩放不同大小,交错向上平移,实现火焰的波动效果。
然后通过一个火焰形状的遮罩图,得到火焰基本形状
2.通过step函数,对火焰进行内焰和外焰的分离上色。得到一个带颜色的火焰。
3.实现一个渐变色,让火焰更加逼真。
三.如何使用
以上是核心节点逻辑,下面演示如何使用以及用到的资源图片
1.参数面板
首先是我们的Inspector面板的参数设定
2.资源图片
使用的资源如下:
四.完整节点图
下面我们贴上完整节点
五.源码
最后,贴出我们的源码,方便没有插件的同学可以使用shader
注:本文部分文字和图片来源于网络,如有侵权,请联系删除。版权归原作者所有!
相关推荐