public Particle(ParticleManager Manager, Vector3 pos) { Behaviors = new List<Cascade.Behaviors.ParticleBehavior>(); Pos = pos; manager = Manager; manager.Add(this); }
public GradientEllipse(ParticleManager man, Vector3 pos, int accuracy) : base(man, pos, accuracy) { for (int i = 0; i < Vertices.Length; i+= 3) { Vertices[i].Color = Color.Transparent; } }
public static void init() { Touches = new List<TouchPoint>(); Effect = new VertexEffect(); SpriteEffect = new SpriteShader(); Output = new OutputString("\n"); ParticleManager = new ParticleManager(); Camera = new Camera(); controls = new Controls(); }
public Ellipse(ParticleManager m, Vector3 p, int accuracy) :base(m, p) { Vertices = new CascadeVertex[accuracy * 3]; PrimitiveCount = accuracy; int o = 0; for (float i = 0; i < 360; i += 360f / (float)accuracy) { Vertices[o] = new CascadeVertex(Vector3.Zero,Color.White); Vertices[o + 1] = new CascadeVertex(new Vector3(MyMath.LengthDirX(50, i), MyMath.LengthDirY(50, i), 0), Color.White); Vertices[o + 2] = new CascadeVertex(new Vector3(MyMath.LengthDirX(50, i + (360f / accuracy)), MyMath.LengthDirY(50, i + (360f / accuracy)), 0), Color.White); o += 3; } }
public TouchEmitter(ParticleManager man, Vector3 p) : base(man, p) { Emit = false; holdParticles = new Particle[6]; for (int i = 0; i < holdParticles.Length; i++) { float betweenVal = MyMath.BetweenValue(0, holdParticles.Length, i); var part = new GradientEllipse(man, Vector3.Zero, 24) { Color = new Color(200, 235, 255), Scale = new Vector2(MyMath.Between(0.1f, 1f, betweenVal)), //Alpha = MyMath.BetweenValue(0.4f, 1, (float)Math.Pow(1 - betweenVal, 0.5f)) Alpha = 0.25f }; Behaviors.ParticleBehavior be = new Behaviors.Pulsate(part.Scale * 0.9f, part.Scale * 1.1f, betweenVal * 1.1f, 0.03f); part.Behaviors.Add(be); holdParticles[i] = part; } }
public TriangleEmitter(ParticleManager m, Vector3 p) : base(m, p) { }
public CircleEmitter(ParticleManager man, Vector3 p) : base(man, p) { }
public ParticleEmitter(ParticleManager man, Vector3 pos) { Pos = pos; manager = man; man.Add(this); }