2

我在使用粒子时遇到了 fps 问题。在游戏中,我有使用粒子的硬币。
我已经在 iPhone 3gs、4、4s、5 和 iPad 3 上测试了我的应用程序。在 3GS 和 iPhone 4 上,FPS 下降到 30-35。但是当我停止使用粒子时,FPS 下降到 50-60。
我也使用了 CCParticleBatchNode 但没有帮助 :( 我与 batchNode 一起使用的代码:

CCParticleBatchNode *batchNodeParticle = [CCParticleBatchNode batchNodeWithFile:@"image.png"];
CCParticleSystemQuad *particles = [CCParticleSystemQuad particleWithFile:@"particles.plist"];
[batchNodeParticle addChild:particles];
[self addChild:batchNodeParticle];

有什么建议么?
感谢和抱歉英语不好。

4

1 回答 1

0

粒子效果是非常容易使用的性能杀手。这里有一些建议:

  • 减少粒子数。通常,人们很想从太多的粒子开始。任何高于 100 的值都会让您感到不安,任何高于 250 的值都会引起轻微的惊恐发作。
  • 同时运行的多个粒子效果会增加粒子的数量。100 个粒子的 10 个粒子效果在性能方面与 1000 个粒子的单个粒子效果一样糟糕。
  • 不要使用过大的纹理。大多数粒子在 64x64 纹理甚至更小的情况下看起来都很好。
  • 没有真正需要提供粒子效果的 -hd 版本。粒子在 Retina 设备上按比例放大,并自动看起来相同。使用 -hd 粒子的唯一好处是使用更高分辨率的纹理,这在 99% 的情况下不会在 Retina 设备上产生任何视觉差异。这是因为大多数粒子效果一开始就有些模糊。
  • 仅当您将多个粒子效果(使用相同的纹理)添加到同一个粒子批处理节点时,粒子批处理才能提高性能。
于 2013-01-16T19:30:25.817 回答