Esempio n. 1
0
        public void AddParticle(Particle particle)
        {
            if (particles.Count > maxParticles)
                particles.RemoveAt(0);
            particles.Add(particle);

            if (!particleClasses.Contains(particle.ParticleClass))
            {
                particleClasses.Add(particle.ParticleClass);
            }
        }
Esempio n. 2
0
 public void RemoveParticle(Particle particle)
 {
     particles.Remove(particle);
 }
        public override void Update(float dt)
        {
            if (Stopped) return;
            timeSinceLastEmit += dt;

            if (Intensity <= 0) return;

            int n = Emit(dt);
            while (n > 0)
            {

                Particle p = new Particle(
                    this.Velocity + this.emitterParameters.InitialVelocity.Rotate(this.Orientation),
                    this.Position, particleClass,10);
                this.ParticleSystem.AddParticle(p);
                n--;
            }
        }