2013-08-16 1 views
0

Pour autant que je comprends système de particules commence à émettre une fois qu'il est ajouté au nœud parent. Comment puis-je l'ajouter au parent mais ne pas le démarrer, donc au début, il sera inactif? Ensuite, chaque fois que j'ai besoin, je peux utiliser resetSystem.ParticleSystem initialement inactif

Répondre

1

Envoyer stopSystem pour arrêter l'émetteur de particules d'émettre plus de particules. Cela permettra aux particules existantes de continuer jusqu'à ce que leur durée de vie expire.

Envoyer resetSystem pour démarrer l'émetteur de particules. Cela va tuer toutes les particules existantes mais faire que le système commence à émettre de nouvelles particules.

Si vous souhaitez empêcher le système d'émettre des particules en premier lieu, définissez emissionRate sur 0 avant de l'ajouter à son parent. Définissez ensuite emissionRate sur un nombre positif lorsque vous souhaitez qu'il émette des particules. Jetez un oeil à la mise en œuvre de la méthode -[CCParticleSystem update:] pour plus de détails.

Aussi, pour autant que je peux dire, le parent ne démarre pas le système de particules. Au lieu de cela, le système de particules est simplement créé dans l'état actif. Avez-vous essayé d'envoyer stopSystem au système avant de l'ajouter à son parent? (Le réglage totalParticles d'un CCParticleSystemQuad semble également réinitialiser le système de particules à actif.)

+0

'stopSystem' n'arrêtera pas les particules qui sont déjà actives juste après l'ajout au noeud parent. Cela vient de doc: 'arrêter d'émettre des particules. Les particules en cours continueront à courir jusqu'à leur mort. Je ne veux pas que des particules soient émises juste après l'ajout au nœud parent, jusqu'à ce que je réinitialise le système. – Pablo

+0

J'ai modifié ma réponse. –

Questions connexes