LevelHelper を使用してレベルを構築し、レベル内にいくつかのパーティクル (動的に初期化された CCParticleSystemQuad) を追加しています。世界を移動するまで、すべて正常に動作します (これは、カメラでプレーヤーを追跡する Box2D で動的に描画される世界です)。ワールドを移動すると、継続的に放出されている新しく追加されたパーティクルが正しい位置に描画されますが、その後のパーティクル アニメーションでは、パーティクルはグローバル ワールド/スクリーン位置に対して相対的に描画されるように見えます。これにより、まったく非現実的に見える奇妙な「トリッピー」効果が得られます。パーティクルはワールド内で再描画/リフレッシュする必要があります
LevelHelperLoader * lh = gameLayer.lh;
LHLayer * layer = [lh layerWithUniqueName:@"MAIN_LAYER"];
NSArray * array = [lh spritesWithTag:WORTEL];
CCParticleSystemQuad * particle;
CGPoint position;
for (LHSprite * sprite in array) {
particle = [CCParticleSystemQuad particleWithFile:@"DirtParticles.plist"];
[layer addChild:particle z:0];
position = sprite.position;
position.y += sprite.contentSize.height * 0.5f;
[particle setPosition:position];
[particle resetSystem];
}
私が間違っているかもしれないことを誰かが知っていますか?