- Home /
Particle System lifetime not affecting particles
I'm currently trying to implement a system where upon collection of an object, a particle system is spawned. The particles then move towards a multiplier to add to the player's score and each particle is destroyed on collision with the multiplier object collider.
I have everything working including the particle movement towards the object and the destruction of said particles on collision (when they do reach it) but for some reason the particles destroy themselves after a given amount of time, every time, no matter how high I set the system or individual particle lifetime to be. What's even more confusing is that when I do change the lifetime to a much higher number, the particles only seems to shrink in size and still destroy themselves after the same amount of time (around about a second or so) Can anyone explain why this is happening? Here is the code I'm using below:
public ParticleSystem system; public ParticleSystem.Particle[] particles; public float power; public GameObject target;
void Update()
{
ParticleSystem.Particle[] particles = new ParticleSystem.Particle[system.particleCount];
system.GetParticles(particles);
for(int i = 0; i < system.particleCount; i++)
{ Vector3 pos = particles[i].position;
Vector3 dir = (target.transform.position - pos).normalized;
particles[i].lifetime = 5.0f;
particles[i].velocity += dir (power / dir.sqrMagnitude Time.deltaTime); }
system.SetParticles(particles, particles.Length);
}
I've also attached a picture of the particle system's components:
Your answer
Follow this Question
Related Questions
How to destroy / hide a single particle? 2 Answers
autodesrtuct property of particle system in 3.5.0f5 3 Answers
Manipilating particle size with respect to movement of my gameobject ? 0 Answers
Trouble with destroying a particle. 1 Answer
Trying to make a dust particle when the the player moves 1 Answer