我的游戏使用了几个粒子系统。每次我使用第一个粒子系统,例如stars.plist 时,下一个要显示的粒子将使用stars.plist 的纹理。(所以如果下一个粒子是雨,那么将是一场星雨:(我使用 [ARCH_OPTIMAL_PARTICLE_SYSTEMparticleWithFile:@""],例如:
CCParticleSystem* rain = [ARCH_OPTIMAL_PARTICLE_SYSTEM particleWithFile:@"rain.plist"];
[self addChild:rain z:-1];
在初始化下雨之前,我调用了预加载粒子,只需使用:
[ARCH_OPTIMAL_PARTICLE_SYSTEM particleWithFile:@"rain.plist"];
那么如果我下一个要播放的粒子是meteor.plist,那么使用的纹理仍然是rain.plist 的纹理。
我使用相同的方式显示流星:
NSString* fn = [NSString stringWithFormat:@"meteor%i.plist", random];
CCParticleSystem* meteor = [ARCH_OPTIMAL_PARTICLE_SYSTEM particleWithFile:fn];
我已经在 3gs 和 iPhone 4 和模拟器中尝试过 CCParticleQuad 和 CCParticlePoint,但仍然是同样的问题。