public Particle Emit(IParticleLogic logic, float life) { if (particle_pool.Count == 0) { return(null); } Particle particle = particle_pool.Dequeue(); particle.in_pool = false; particle.Create(logic, life); return(particle); }
public void Create(IParticleLogic logic, float life) { age = 0; position = Vector3.Zero; velocity = Vector3.Zero; rotation = Vector3.Zero; scale = Vector2.One; color = Color.White; velocity_scale = 0; is_velocity_particle = false; is_alive = true; this.life = life; this.logic = logic; logic.Birth(this); }
public void Create(IParticleLogic logic, float life) { age = 0; position = Vector3.Zero; velocity = Vector3.Zero; rotation = Vector3.Zero; scale = Vector2.One; color = Color.White; velocity_scale = 0; is_velocity_particle = false; is_alive = true; this.life = life; this.logic = logic; logic.Birth(this); }
public Particle Emit(IParticleLogic logic, float life) { if (particle_pool.Count == 0) return null; Particle particle = particle_pool.Dequeue(); particle.in_pool = false; particle.Create(logic, life); return particle; }