1

パーティクル エミッタで setTexture:withRect: を呼び出しています...私の質問は、パーティクルをランダムなスプライトで構成できるように、複数の四角形を与える方法はありますか? または、これを達成する唯一の方法は、複数のエミッターを使用することですか?

生成されているパーティクルのコレクションを実際に取得する方法があれば、それらをループして rect または color プロパティを設定できると思いましたが、cocos2d ドキュメントでは、個々のパーティクル オブジェクトを取得する方法がわかりません。 ……これを行う方法はありますか?

4

2 に答える 2

1

放出されたパーティクルに異なるイメージを持たせたい場合は、パーティクルイメージのスプライトシートを作成し、CCParticleSystemQuadオーバーライドinitTexCoordsWithRect:メソッドをサブクラス化して、パーティクルに同じフレームを使用する代わりに、パーティクルごとに異なるフレームを使用することができます。

ビットマップフォントを使用したこのようなパーティクルシステムの例については、こちらをご覧ください。同じアイデアを使用して、CCSpriteFrameCacheを使用してフレーム情報を取得するCCParticleSystemQuadサブクラスを作成しました。

于 2012-10-08T22:41:49.917 に答える
0

いいえ、個々のパーティクルにアクセスしたり変更したりすることはできません。

ランダムなスプライトが必要な場合は、それぞれが異なるテクスチャを使用して複数のパーティクル システムを実行するだけです。

于 2012-10-08T14:21:30.747 に答える