CCParticleSystem删除最佳实践

时间:2013-07-14 08:01:05

标签: ios cocos2d-iphone ccparticlesystem

我的问题是针对ios用cocos2d v1.1.0-beta2b编写的应用程序:

最佳做法 删除/发布 CCParticleSystem

我知道的一种方法是使用setAutoRemoveOnFinish:YES。

[emitter setAutoRemoveOnFinish:YES];
[emitter stopSystem];

另一种方法是使用removeChild手动删除发射器。

还有其他人吗?通常建议采用哪种方式?

作为旁注,cocos2d v1.1.0-beta2b下有关于CCParticleSystem删除/发布的已知问题吗?

1 个答案:

答案 0 :(得分:1)

要删除粒子系统,只需将其从父节点中删除即可。这是最好的方式。

如果您的粒子系统没有无限期,最好的方法是使用setAutoRemoveOnFinish。当粒子系统结束时,它将自动从父节点中删除系统。

如果您的粒子系统具有无限持续时间,则将removeChildcleanUp:YES一起使用(您不需要设置stopSystem before)。这样就可以强制删除系统。

或者您可以将stopSystemsetAutoRemoveOnFinish:YES一起使用,系统将在最后一个粒子结束后删除。这样就可以顺利删除系统。

其他提示:

  • 使用CCParticleSystemQuad代替CCParticleSystem
  • 建议您使用autorelease构造函数创建粒子系统,例如[CCParticleSystemQuad particleWithFile:][CCParticleSystemQuad particleWithTotalParticles:]
  • 当然,如果你有财产,请使用release