Select your preferred scripting language. All code snippets will be displayed in this language.
Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.
CloseReturns a copy of all particles and assigns an array of all particles to be the current particles.
Note that after modifying the particles array you must assign it back to the particleEmitter to see the change. Particles with energy of zero or less will be killed when assigning the particles. Thus when creating a complete new particle array, you need to set the energy of all particles explicitly.
// Attach this script to an existing particle emitter. function LateUpdate () { // extract the particles var particles = particleEmitter.particles; for (var i = 0; i < particles.Length; i++) { // Move the particles up and down on a sinus curve var yPosition = Mathf.Sin (Time.time) * Time.deltaTime; particles[i].position += Vector3 (0, yPosition, 0); // make the particles red particles[i].color = Color.red; // modify the size on a sinus curve particles[i].size = Mathf.Sin (Time.time) * 0.2; } // copy them back to the particle emitter particleEmitter.particles = particles; }
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void LateUpdate() { Particle[] particles = particleEmitter.particles; int i = 0; while (i < particles.Length) { float yPosition = Mathf.Sin(Time.time) * Time.deltaTime; particles[i].position += new Vector3(0, yPosition, 0); particles[i].color = Color.red; particles[i].size = Mathf.Sin(Time.time) * 0.2F; i++; } particleEmitter.particles = particles; } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): def LateUpdate() as void: particles as (Particle) = particleEmitter.particles i as int = 0 while i < particles.Length: yPosition as float = (Mathf.Sin(Time.time) * Time.deltaTime) particles[i].position += Vector3(0, yPosition, 0) particles[i].color = Color.red particles[i].size = (Mathf.Sin(Time.time) * 0.2F) i++ particleEmitter.particles = particles