unity ParticleSystem 实现序列帧动画效果(一)

用粒子系统实现序列帧动画优势:

先附上一个 介绍序列帧实现方式比较的链接 点击打开链接

在该链接里说较为倾向于使用该方式俩实现序列帧动画,那么具体的好处又有哪些呢?

此处再贴一个链接,这里介绍了下粒子系统的更新和性能优化方面的一些小提示:

        (https://unity3d.com/cn/how-to/particle-systems-performance-tips

        看过以上链接可以知道,粒子系统可以动态合批且添加了Sprite Support,那么这样我们就可以考虑大量的序列帧动画同屏显示的时候,粒子系统来实现它会是一个非常“省事”且“使用”的方法,同时我们也可以用TexturePacker来生成精灵图集,满足节约图集的需求,由此看来粒子系统的确是一个很好的选择。

具体实现方式:

首先如果需要实现序列帧动画我们需要的是粒子系统中的以下组件:


也就是说我们初始化创建的粒子系统,只需要初始设置、TextureSheetAnimation和Renderer

(1)TextureSheetAnimation

实现序列帧动画,TextureSheetAnimation承担了大部分的配置:

上图是在Mode为Grid时,TextureSheetAnimation的相关参数,这里主要是支持——完全相同大小的精灵在同一图集中通过正交裁切出多个精灵进行序列帧播放(如果我们需要用TexturePacker来实现,是需要不同大小甚至是网格形式来实现,那么这里的模式自然是不支持的),因为跟本文介绍无关,所以在此处挂上链接,如有需要此方式实现,可以参照这里Unity3D:粒子特效(Particle System)播放序列帧动画

接下来来介绍另一个Mode,Sprites,通过选择Sprites来切换:


切换完之后,参数会有些许变动:

SpritesMode支持导入精灵来实现序列帧动画,因此TexturePacker导出的图集生成的精灵可以直接导入其中来进行设置,可以通过这里的 +号 添加精灵,也可以通过代码手动添加,具体API可查询文档,就不在阐述了

接下来对这里的参数来进行简单的说明(因为实现时跟官方文档描述有一定的出入,这里多数是自己在实验过后的理解)

首先列举下所有参数及介绍:

Frame over Time:每个循环播放,帧随循环内时间的增加而变化的曲线设置(此处的循环与cycles有关,且循环不从0开始计数)

Start Frame:开始的帧是哪一帧

Cycles:(这里是自己测试得到的一个解释)一个生命周期里序列帧动画播放的循环次数,这里应该控制着

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值