public override List <IParticleData> GenerateParticleData(int count) { var result = new List <IParticleData>(); var gravityConfig = (GravityConfig)spaceConfig; for (int i = 0; i < count; i++) { var radius = RNG.RandomFloat(gravityConfig.MinimumMass, gravityConfig.MaximumMass); var data = new GravityParticleData(radius, radius, RNG.RandomColor()); // Create particle type with it's interactions result.Add(data); } return(result); }
public void Initialize(LogicController logicController, Space space) { var defaultParticleData = new GravityParticleData(35, 5, Color.Blue); var otherParticleData = new GravityParticleData(35, 10, Color.Blue); //var specialParticle = logicController.ParticleController.CreateParticle(otherParticleData, new Vector2(45, 0)); //specialParticle.Velocity = new Vector2(15, 0); var particles = new List <Particle>() { // specialParticle, logicController.ParticleController.CreateParticle(defaultParticleData, new Vector2(-35, 0)), logicController.ParticleController.CreateParticle(defaultParticleData, new Vector2(0, 35)), logicController.ParticleController.CreateParticle(defaultParticleData, new Vector2(0, -35)) }; space.Particles.AddRange(particles); }