关于粒子插件使用方法的纠正

简介: 前段时间我写了一篇《想要漂亮的效果,怎么能少了粒子》,分享了微信小游戏制作工具中关于粒子插件的使用方法。在那篇教程中对于粒子插件的使用方法是错误的,这个问题是我的一位学员发现的,根据教程中的方式使用粒子效果时,游戏的内存占用会持续的增加,直到游戏闪退。找了许久,最后才发现是粒子插件使用方法的问题。

嗨!大家好,我是小蚂蚁。


前段时间我写了一篇《想要漂亮的效果,怎么能少了粒子》,分享了微信小游戏制作工具中关于粒子插件的使用方法。在那篇教程中对于粒子插件的使用方法是错误的,这个问题是我的一位学员发现的,根据教程中的方式使用粒子效果时,游戏的内存占用会持续的增加,直到游戏闪退。找了许久,最后才发现是粒子插件使用方法的问题。


这篇文章在此做个纠正,以下是粒子插件的正确使用方法。


我们搭建一个非常简单的场景,在场景中导入一个粒子插件,然后放置一个圆形。启动游戏,圆形 2 秒后发生爆炸,然后我们使用粒子效果来实现爆炸。


640.png


看一下圆形上的积木逻辑。


640.png


设置粒子的位置必须要使用粒子效果提供的“设置粒子原点坐标”这个积木块,不能使用运动中的设置位置积木。


预览一下。


640.gif


接着,我们再来看一下粒子插件在具体的游戏中的使用。


297375bc90e388d5981e1170e1fcf880.gif


如图,是我在新游戏经典消除1010中使用粒子实现的消除效果。


首先,根据游戏中的需求导入粒子插件,因为每个粒子插件只能显示一种粒子效果(只能显示红泡泡或者绿泡泡),所以导入了 6 个粒子插件,并为每个粒子配置了对应的图片和参数。


f4953e2bc2e345a9f4cb9ef4a9240983.png


接着,看一下播放粒子的积木逻辑。


e5d0b52a14c7da0eeacbed69bb301c22.png


方块消除时,只需要在当前方块的位置播放一次粒子效果就可以了。


对比一下之前的错误的使用方法。


7fcf4ebe8c702d32bfc2f98ba5e68f25.png


这里有一点儿需要特别注意:不要去克隆粒子效果,即使你后来删除了克隆的粒子效果,这个粒子效果占用的内存也不会被释放。这也就是之前方法的问题之处,因为在游戏的过程中需要不停的消除,就需要不停的克隆粒子,虽然粒子播放完后都使用“删除此克隆体”积木进行了删除,但是粒子占用的内存却并没有被释放。


349a6554f3bc4b5e564d176d1c4d2b8f.png


这里是游戏更新前后内存的对比。在修正了粒子的使用方法后,游戏的内存占用终于回复正常了。


对于粒子效果插件,只需要添加一次,就可以无限制的在任何位置上播放粒子效果(可以在多个位置上同时播放)。所以我们不需要对粒子插件进行克隆操作,只需要在用到的时候,将其设置到指定的位置,然后让其播放粒子效果即可。


之前的文章最后,关于粒子效果对游戏性能的影响很大的说法也是有问题的。因为,据我测试,在修正了方法后,即使在游戏中同时消除很多行(也就是说需要同时播放多个粒子效果)游戏也依然非常的流畅。所以,大家可以放心大胆的使用粒子效果,让自己的游戏更绚丽。


至于粒子效果的性能瓶颈如何,到底可以支持同时播放多少粒子?我并没有进行具体的测试,大家可以根据自己想要达到的效果自行测试一下。


今天的内容就到这里了,虽然我的教程的阅读量不多,但是对于这些读者来说,我分享的很多方块很可以会被用上,所以,之前关于粒子的错误使用方法在这里进行了纠正,如果你之前已经使用了错误的方法,那么看了今天的文章之后,就赶紧的纠正过来吧!


我是会做游戏也会教你做游戏的小蚂蚁,想学习做游戏的话,关注我的公众号就对啦!

相关文章
|
前端开发 定位技术 索引
3D激光SLAM:ALOAM---后端 lasermapping构建角点约束与面点约束
后端的构建约束问题和前端不一样。原因就是前端从上一帧上去找,而后端是在局部地图上找,点要多很多,并且没有了线束信息,所以原理上不一样了。 **线特征的提取** 通过kdtree在局部地图中找到5个最近的线特征,为了判断他们是否符合线特征的特性,需要对5个点构成的协方差矩阵进行特征值分解,当上述5个点在一条直线上时,他们只有一个主方向,也就是特征值是一个大特征值,以及两个小特征值,大特征值对应的特征向量就是对应直线的方向向量。 **面特征的提取** 通过kdtree在地图中找到最近的面特征也是5个, 理论上也可以通过特种值分解的方式,最小的特征值对应的特征向量就是平面的法向量, 不过代码里选
3D激光SLAM:ALOAM---后端 lasermapping构建角点约束与面点约束
|
6月前
复现sci顶刊中的画中画(局部细节放大)
复现sci顶刊中的画中画(局部细节放大)
404 0
|
算法 测试技术
NeRF新研究来了:3D场景无痕移除不需要对象,精确到毛发
NeRF新研究来了:3D场景无痕移除不需要对象,精确到毛发
152 0
|
小程序
关于粒子插件使用方法的纠正
前段时间我写了一篇《想要漂亮的效果,怎么能少了粒子》,分享了微信小游戏制作工具中关于粒子插件的使用方法。在那篇教程中对于粒子插件的使用方法是错误的,这个问题是我的一位学员发现的,根据教程中的方式使用粒子效果时,游戏的内存占用会持续的增加,直到游戏闪退。找了许久,最后才发现是粒子插件使用方法的问题。
109 0
|
小程序 开发者
想要漂亮的效果,怎么能少了粒子插件
嗨!大家好,我是小蚂蚁,今天我们来分享一下微信小游戏制作工具中的关于粒子插件的使用,粒子插件能够帮助我们在游戏中创建各种漂亮的效果,例如爆炸,果汁四溅,漂亮的焰火等等。
87 0
|
人工智能 编解码 移动开发
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换(2)
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换
122 0
|
计算机视觉
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换(1)
当「分割一切」遇上图像修补:无需精细标记,单击物体实现物体移除、内容填补、场景替换
142 0
|
NoSQL 定位技术 C#
基于C#的ArcEngine二次开发28: 等高线高程值与国标码一致性检查思路及代码分析
基于C#的ArcEngine二次开发28: 等高线高程值与国标码一致性检查思路及代码分析
基于C#的ArcEngine二次开发28: 等高线高程值与国标码一致性检查思路及代码分析
基于C#的ArcEngine二次开发26:等高线点线矛盾检查
基于C#的ArcEngine二次开发26:等高线点线矛盾检查
基于C#的ArcEngine二次开发26:等高线点线矛盾检查
下一篇
无影云桌面