【实现100个unity特效之14】unity2d任务死亡像素破碎效果
先来解决如何使图片变成像素颗粒效果
先创建一个图片采样节点,便于我们观察,然后将主图做成变量,这是个好习惯

创建一个UV节点,我们来分析图片跟UV的关系,UV节点分离出来的R和G就是UV的坐标
一个是从左往右0到1渐变,一个是从下往上0到1渐变

我们将R和G从新组合后,再给到图片的UV节点
你会发现图片没有任何变化,这间接说明了R和G就是我们的UV坐标

那么像素颗粒化的关键就是将R和G的顺滑渐变,变成阶梯渐变
下面我使用一个简单的向下取整函数来改造它
以R值为例,我们将它先乘以10,将0到1变成0到10的范围

接着,我们对0到10向下取整,这个操作就将小数部分全部去除了,我们得到一个整数的递增
因为UV坐标取值范围是0到1,我们再将他用ReMap节点缩小一下比例,这里你除以10也是一样的

于是,我们就得到了一个阶梯递增的渐变,同理,我们来处理一下G的渐变

将处理后的R和G重新组合,再给到图片的UV

不出意外,图片变成了马赛克,这是因为我们的像素颗粒太大了,为了方便修改,我们将控制粒度做成变量

新增材质,修改参数看看效果

下面进入粒子系统破碎效果的制作
创建一个粒子系统,将粒子大小改为0.15,和图片的像素颗粒大小差不多






代码控制
代码


赋值,并将图片和粒子效果作为敌人的子物体并调整位置

效果

参考
https://www.bilibili.com/video/BV1DW4y1R77R/
完结
赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,以便我第一时间收到反馈,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!
好了,我是向宇,https://xiangyu.blog.csdn.net
一位在小公司默默奋斗的开发者,出于兴趣爱好,最近开始自学unity,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!php是工作,unity是生活!如果你遇到任何问题,也欢迎你评论私信找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~

更多推荐
所有评论(0)