public void Update(float step_time)
 {
     foreach (var item in systems)
     {
         cBaseParticleController c = item.Value;
         c.Update(step_time);
     }
 }
 public void PreRender(float alpha)
 {
     // if we want calculate viewPos before all renderings are started...
     foreach (var item in systems)
     {
         cBaseParticleController c = item.Value;
         c.BuildVertexBuffer(alpha);
     }
 }
 public void Render(RenderTarget destination, float alpha)
 {
     //label.DisplayedString = "Active explosion particles: " + explosions.NumActive.ToString();
     //destination.Draw(label);
     foreach (var item in systems)
     {
         cBaseParticleController c = item.Value;
         c.Render(destination, alpha);
     }
 }