This explosion was a big challenge...
All the FX needed to be able to rewind, so using particle system wasn't an option.
Everything needed to be material/shader driven.
So with every element I added, I needed to drive the behavior of the particle, as well as the way it rendered.
Big thanks to Nicolas Larreteguy for comming up with much of the logic behind this.