探cocos2dx粒子特效模块(particle_nodes),源码版本(2.2.3)

整体来说,cocos2dx粒子特效模块的实现还是比较简单的,主要涉及3个类,分别封装了不同的功能。

粒子特效实现可以简单的分解成三个过程:发射器坐标计算,更新坐标,渲染。这三个过程对应三个类。


模块相关类:
CCParticleBatchNode,粒子特效渲染在这个类里边完成。
CCParticleSystem,粒子特效坐标计算在这个类完成,它里边包含有粒子特效2个模式的所有参数。

CCParticleSystemQuad,负责更新粒子坐标的类,也是整个粒子特效类继承体系的最高层,在这个层中创建粒子特效只能是默认的重力模式,如果需要创建半径模式的粒子特效需要从编辑器中设置并生成一个plist文件,最后指定从plist文件加载就可以指定创建的模式。


uml图:


隐隐约约我看到了mvc模式的影子。


使用方式:
粒子系统使用的难度在于参数的设置而不在于代码。参数可以在编辑器里边设置,代码在这里就略了。


扩展:
整个粒子特效模块封装的东西已经足够的明显了,如果需要调整粒子特效坐标的计算修改CCParticleSystem的update就可以了,当然也需要重新写一个CCParticleStystemQuad,或者直接修改CCParticleStystemQuad继承的父类。到这我不由得想,如果将继承关系改成包含关系,那么扩展的话那不就只需要重新写另一个CCParticleSystem就可以了么?继承是松耦合的么?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值