在cocos2D中,我目前有一个非常简单的粒子发射器初始化如下:
turnEmitter = [[CCParticleFlower alloc] init];
turnEmitter.texture = [[CCTextureCache sharedTextureCache] addImage:@"Pocket.png"];
[self addChild:turnEmitter z:1];
turnEmitter.scale = 0.7f;
turnEmitter.positionType = kCCPositionTypeFree;
它只是直接添加到游戏层。
此发射器以这种方式跟随屏幕周围的精灵(发生在更新方法中):
turnEmitter.position = turnEmblem.position;
现在的问题是,发射器后面留下的粒子尾部会随着发射器移动,而不是释放的粒子简单地停留在它们被释放的位置,这会产生一种非常奇怪和愚蠢的效果。
我想做的是让粒子在生成后根本不跟随发射器,不幸的是,我找不到任何方法。
正如您从上面的代码中看到的那样,我已经四处搜索,并找到了建议更改发射器的 positionType 属性的人,尽管我已经尝试了所有可能性,但它并没有解决问题。
有没有人对这可能是什么有任何想法?
您可能想尝试将"emitterMode"更改为"kCCPositionTypeFree"。我有一个类似的问题,我把发射器作为 CCNode 的孩子。CCNode正在旋转,但粒子和发射器没有。同样,它看起来很愚蠢,因为旋转的幻觉被破坏了。我需要在我的发射器上设置以下内容:
emitter.emitterMode = kCCPositionTypeRelative;
emitter.positionType = kCCPositionTypeRelative;