Dynamically produce a shatter pattern

So over the past few weeks I’ve been working a lot on overlaying the shatter pattern you get from something like glass. Example:

http://www.wallpaperup.com/uploads/wallpapers/2014/07/26/407485/big_thumb_506f96bc266cc476db00ca081edcdec8.jpg

Now you can mess around a lot with these types of images to produce nice effects in static imagery but I’d quite like to produce a more dynamic experience where you can see the shatter grow over time - I’ve experimented with expanding/shrinking the image and clipping it off with expanding circles but you can only do so much particularly with regards to directing the shatter.

With this in mind does anyone know of any material on procedurally generating similar patterns? It strikes me that it is a similar pattern to lighting or spider webs and I have definitely seen this generated.

Any ideas would be greatly appreciated. Thank you

I like the only answer on this forum post. It brings up BSP trees and links to a discussion from the developer of Smash Hit. You can start playing around with things in 2D as far as choosing arbitrary planes near an impact point.

A seemingly nice tutorial on BSP trees for Java; page 1, 2, & 3 (with 2D BSP Java source).

So from the point of impact you can choose some semi-random planes and continue subdividing and creating polygons and perhaps continue to draw outward and perhaps apply some unique shader effects to the edges… I’m sure a bit of experimentation would be necessary. Then from there it’s kind of going the route of the Smash Hit info above for 3D.

Not a glass shatter video, but something someone made with Java2D.