Example #1
0
        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);
        }
Example #2
0
        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);
        }