public override ParticleFeature create(JsonObject initData) { ParticleInitializationData init = new ParticleInitializationData(); String emmitType = (String)initData["emitterType"]; switch (emmitType) { case "point": init.myEmitterType = EmitterFeature.EmitterType.POINT; break; case "line": init.myEmitterType = EmitterFeature.EmitterType.LINE; break; case "plane": init.myEmitterType = EmitterFeature.EmitterType.PLANE; break; case "circle": init.myEmitterType = EmitterFeature.EmitterType.CIRCLE; break; } init.myContinous = (bool)initData["continuous"]; init.myEmissionRate = (float)initData["emissionRate"]; init.myP1 = (Vector3)initData["p1"]; init.myP1Variance = (Vector3)initData["p1Variance"]; init.myP2 = (Vector3)initData["p2"]; init.myP2Variance = (Vector3)initData["p2Variance"]; init.myVelocity = (Vector3)initData["velocity"]; init.myVelocityVariance = (Vector3)initData["velocityVariance"]; init.mySize = (Vector3)initData["size"]; init.mySizeVariance = (Vector3)initData["sizeVariance"]; init.myColor = (Color4)initData["color"]; init.myColorVariance = (Color4)initData["colorVariance"]; init.myRotation = (float)initData["rotation"]; init.myRotationVariance = (float)initData["rotationVariance"]; init.myMass = (float)initData["mass"]; init.myMassVariance = (float)initData["massVariance"]; init.myLifetime = (float)initData["lifetime"]; init.myLifetimeVariance = (float)initData["lifetimeVariance"]; EmitterFeature lf = new EmitterFeature(init); return(lf); }
public EmitterFeature(ParticleInitializationData init) : base(ParticleFeature.FeatureType.INIT, "emitter") { emitterType = init.myEmitterType; continuous = init.myContinous; emisionRate = init.myEmissionRate; p1 = init.myP1; p1Var = init.myP1Variance; p2 = init.myP2; P2Var = init.myP2Variance; velocity = init.myVelocity; velocityVar = init.myVelocityVariance; size = init.mySize; sizeVar = init.mySizeVariance; color = init.myColor; colorVar = init.myColorVariance; rotation = init.myRotation; rotationVar = init.myRotationVariance; mass = init.myMass; massVar = init.myMassVariance; lifetime = init.myLifetime; lifetimeVar = init.myLifetimeVariance; }