private void InitParticle(ref Particle p) { p.lifeTime = GetRandomRangeValue(lifeTimeRange); p.acceleration = spawnAcceleration.GetRandomValue(random); p.startAcceleration = p.acceleration; p.scale = spawnScale.GetRandomValue(random); if (keepScaleRatio) { p.scale = scaleAspect.GetAspectRatio(p.scale); } p.position = spawnArea.GetRandomValue(random); p.position += transform.position; p.startPosition = p.position; p.color = particleColor.GetRandomValue(random); p.ClearModules(); for (int i = 0; i < perParticleModules.Count; i++) { ParticleModule module = perParticleModules[i].Clone(); module.InstanceInit(ref p); p.AddModule(module); } }
public void RemoveModule(ParticleModule module) { modules.Remove(module); }
public void AddModule(ParticleModule module) { modules.Add(module); }
public void AddPerParticleModule(ParticleModule module) { perParticleModules.Add(module); }
public void RemoveParticleGlobalModule(ParticleModule module) { globalModules.Remove(module); }
public void AddParticleGlobalModule(ParticleModule module) { globalModules.Add(module); }
public void RemovePerParticleModule(ParticleModule module) { perParticleModules.Remove(module); }