protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\smoke";

            settings.MaxParticles = 200;

            settings.Duration = TimeSpan.FromSeconds(2);

            settings.MinHorizontalVelocity = 9;
            settings.MaxHorizontalVelocity = 16;

            settings.MinVerticalVelocity = 6;
            settings.MaxVerticalVelocity = 11;

            settings.Gravity = new Vector3(0, -2, 0);

            settings.EndVelocity = 0;

            settings.MinColor = Color.Black;
            settings.MaxColor = Color.DimGray;

            settings.MinRotateSpeed = -2;
            settings.MaxRotateSpeed = 2;

            settings.MinStartSize = 2;
            settings.MaxStartSize = 2;

            settings.MinEndSize = 18;
            settings.MaxEndSize = 35;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\explosion3";

            settings.MaxParticles = 100;

            settings.Duration = TimeSpan.FromSeconds(0.3);
            settings.DurationRandomness = 1;

            settings.MinHorizontalVelocity = 20;
            settings.MaxHorizontalVelocity = 30;// 30;

            settings.MinVerticalVelocity = -20;
            settings.MaxVerticalVelocity = 20;// 20;

            settings.EndVelocity = 0;

            settings.MinColor = Color.DarkGray;
            settings.MaxColor = Color.Gray;

            settings.MinRotateSpeed = -1;
            settings.MaxRotateSpeed = 1;

            settings.MinStartSize = 2;
            settings.MaxStartSize = 2;

            settings.MinEndSize = 25;
            settings.MaxEndSize = 50;

            settings.BlendState = BlendState.Additive;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\smoke2";

            settings.MaxParticles = 1000;

            settings.Duration = TimeSpan.FromSeconds(3);

            settings.DurationRandomness = 1f;

            settings.EmitterVelocitySensitivity = 0.2f;

            settings.MinHorizontalVelocity = 1;
            settings.MaxHorizontalVelocity = 1;

            settings.MinVerticalVelocity = -1;
            settings.MaxVerticalVelocity = -1;

            settings.MinColor = Color.Gray;
            settings.MaxColor = Color.LightGray;

            settings.MinRotateSpeed = -4;
            settings.MaxRotateSpeed = -4;

            settings.MinStartSize = 2;
            settings.MaxStartSize = 2;

            settings.MinEndSize = 5;
            settings.MaxEndSize = 15;

            settings.BlendState = BlendState.NonPremultiplied;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\concrete";

            settings.MaxParticles = 500;

            settings.Duration = TimeSpan.FromSeconds(3);

            settings.MinHorizontalVelocity = 8;
            settings.MaxHorizontalVelocity = 35;

            settings.MinVerticalVelocity = 10;
            settings.MaxVerticalVelocity = 25;

            settings.Gravity = new Vector3(0, -10, 0);

            settings.EndVelocity = 0;

            settings.MinColor = Color.DarkGray;
            settings.MaxColor = Color.White;

            settings.MinRotateSpeed = -6;
            settings.MaxRotateSpeed = 6;

            float size = 0.5f;
            settings.MinStartSize = .1f;
            settings.MaxStartSize = .6f;

            settings.MinEndSize = .4f;
            settings.MaxEndSize = .6f;

            settings.BlendState = BlendState.NonPremultiplied;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\smoke2";

            settings.MaxParticles = 100;

            settings.Duration = TimeSpan.FromSeconds(5);

            settings.MinHorizontalVelocity = 17;
            settings.MaxHorizontalVelocity = 23;

            settings.MinVerticalVelocity = 2;
            settings.MaxVerticalVelocity = 5;

            settings.Gravity = new Vector3(0, -4, 0);

            settings.EndVelocity = 0;

            settings.MinColor = Color.WhiteSmoke;
            settings.MaxColor = Color.LightGray;

            settings.MinRotateSpeed = -2;
            settings.MaxRotateSpeed = 2;

            float scale = 5;
            settings.MinStartSize = 5 * scale;
            settings.MaxStartSize = 7 * scale;

            settings.MinEndSize = 8 * scale;
            settings.MaxEndSize = 12 * scale;

            settings.BlendState = BlendState.NonPremultiplied;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\ring_explosion";

            settings.MaxParticles = 100;

            settings.Duration = TimeSpan.FromSeconds(0.4);
            settings.DurationRandomness = 1;

            settings.MinHorizontalVelocity = -15;
            settings.MaxHorizontalVelocity = 30;// 30;

            settings.MinVerticalVelocity = -10;
            settings.MaxVerticalVelocity = 20;// 20;

            settings.EndVelocity = 1;

            settings.Gravity = new Vector3(0, -3, 0);

            Color yel = new Color(Color.Yellow.R, Color.Yellow.G, Color.Yellow.B, 250);
            Color red = new Color(Color.White.R, Color.White.G, Color.White.B, 150);
            settings.MinColor = yel;
            settings.MaxColor = red;

            settings.MinRotateSpeed = -1;
            settings.MaxRotateSpeed = 1;

            settings.MinStartSize = 1;
            settings.MaxStartSize = 2;

            settings.MinEndSize = 2;
            settings.MaxEndSize = 4;

            settings.BlendState = BlendState.NonPremultiplied;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\fire";

            settings.MaxParticles = 2400;

            settings.Duration = TimeSpan.FromSeconds(2);

            settings.DurationRandomness = 2;

            settings.MinHorizontalVelocity = 0;
            settings.MaxHorizontalVelocity = 3;

            settings.MinVerticalVelocity = -10;
            settings.MaxVerticalVelocity = 7;

            // Set gravity upside down, so the flames will 'fall' upward.
            settings.Gravity = new Vector3(0, 3.5f, 0);

            //settings.MinColor = new Color(255, 255, 255, 10);
            //settings.MaxColor = new Color(255, 255, 255, 40);
            Color yel = new Color(Color.Yellow.R, Color.Yellow.G, Color.Yellow.B, 50);
            Color red = new Color(Color.Red.R, Color.Red.G, Color.Red.B, 50);
            settings.MinColor = yel;
            settings.MaxColor = red;

            settings.MinStartSize = 3;
            settings.MaxStartSize = 4;

            settings.MinEndSize = 0;
            settings.MaxEndSize = 0.5f;

            settings.BlendState = BlendState.NonPremultiplied;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\smoke";

            settings.MaxParticles = 200;

            settings.Duration = TimeSpan.FromSeconds(3);

            settings.MinHorizontalVelocity = 2;
            settings.MaxHorizontalVelocity = 15;

            settings.MinVerticalVelocity = 2;
            settings.MaxVerticalVelocity = 25;

            settings.Gravity = new Vector3(0, -9, 0);

            settings.EndVelocity = 0;

            settings.MinColor = Color.SaddleBrown;
            settings.MaxColor = Color.Orange;

            settings.MinRotateSpeed = -2;
            settings.MaxRotateSpeed = 2;

            settings.MinStartSize = 2;
            settings.MaxStartSize = 2;

            settings.MinEndSize = 25;
            settings.MaxEndSize = 40;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\spark";

            settings.MaxParticles = 100;

            settings.Duration = TimeSpan.FromSeconds(5);

            settings.MinHorizontalVelocity = 8;
            settings.MaxHorizontalVelocity = 25;

            settings.MinVerticalVelocity = 10;
            settings.MaxVerticalVelocity = 25;

            settings.Gravity = new Vector3(0, -10, 0);

            settings.EndVelocity = 0;

            settings.MinColor = Color.Yellow;
            settings.MaxColor = Color.Red;

            settings.MinRotateSpeed = -2;
            settings.MaxRotateSpeed = 2;

            float size = 0.3f;
            settings.MinStartSize = size;
            settings.MaxStartSize = size;

            settings.MinEndSize = .05f;
            settings.MaxEndSize = .1f;

            settings.BlendState = BlendState.AlphaBlend;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\smoke2";

            settings.MaxParticles = 100;

            settings.Duration = TimeSpan.FromSeconds(5);

            settings.MinHorizontalVelocity = 5;
            settings.MaxHorizontalVelocity = 10;

            settings.MinVerticalVelocity = 1;
            settings.MaxVerticalVelocity = 15;

            settings.Gravity = new Vector3(0, -7, 0);

            settings.EndVelocity = 0;

            settings.MinColor = Color.DarkGray;
            settings.MaxColor = Color.NavajoWhite;

            settings.MinRotateSpeed = -2;
            settings.MaxRotateSpeed = 2;

            float scale = 4;
            settings.MinStartSize = 5 * scale;
            settings.MaxStartSize = 10 * scale;

            settings.MinEndSize = 3 * scale;
            settings.MaxEndSize = 12 * scale;

            //settings.BlendState = BlendState.Opaque;
            //settings.BlendState = BlendState.Additive;
            //settings.BlendState = BlendState.AlphaBlend;
            settings.BlendState = BlendState.NonPremultiplied;
        }
        protected override void InitializeSettings(ParticleSettings settings)
        {
            settings.TextureName = "Particles\\smoke";

            settings.MaxParticles = 500; //600

            settings.Duration = TimeSpan.FromSeconds(3);

            settings.MinHorizontalVelocity = 0;
            settings.MaxHorizontalVelocity = 1;

            settings.MinVerticalVelocity = -1;
            settings.MaxVerticalVelocity = -1;

            // Create a wind effect by tilting the gravity vector sideways.
            settings.Gravity = new Vector3(-2, 5, 0);

            settings.EndVelocity = 0.75f;

            settings.MinRotateSpeed = -1;
            settings.MaxRotateSpeed = 1;

            settings.MinStartSize = 5;
            settings.MaxStartSize = 10;

            settings.MinColor = Color.Black;
            settings.MaxColor = Color.LightGray;

            //settings.MinColor = new Color(64, 96, 128, 18);
            //settings.MaxColor = new Color(45, 45, 45, 1);

            settings.MinEndSize = 20;
            settings.MaxEndSize = 30;

            settings.BlendState = BlendState.NonPremultiplied;
        }
 /// <summary>
 /// Derived particle system classes should override this method
 /// and use it to initalize their tweakable settings.
 /// </summary>
 protected abstract void InitializeSettings(ParticleSettings settings);