{ "MaxCount": 4096, "Duration": 1, "Rate": 30, "Drawable": { "Type": "SkCircleDrawable", "Radius": 1 }, "Code": [ "// float rand; Every read returns a random float [0 .. 1)", "", "void spawn(inout Particle p) {", " p.lifetime = 10;", " p.vel.y = 10 + rand * 20;", " p.vel.x = -5 + 10 * rand;", " p.pos.x = rand * 500;", "}", "", "void update(inout Particle p) {", " p.scale = size(p.age);", "}", "" ], "Bindings": [ { "Type": "SkCurveBinding", "Name": "size", "Curve": { "XValues": [], "Segments": [ { "Type": "Cubic", "Ranged": true, "Bidirectional": false, "A0": 10, "B0": 10, "C0": 10, "D0": 0, "A1": 10, "B1": 0, "C1": 0, "D1": 0 } ] } } ] }