- Jason Watts
- Creative Agency
- BBC Creative
- Production Company
- BBC Creative
For this trailer for season 11 of Doctor Who I did the shattering of the glass along with the camera move.
For a somewhat more technical account of what I did here's a description I wrote for an article for CGW magazine:
The first thing I wanted to do before even getting started on the shatter was a shockwave running through the glass and frame. Clearly the helicopter crash scene in The Matrix had left a lasting impression on me and it was great to see in a "The Slo Mo Guys" video where they throw a hammer through a mirror that this does to a certain degree actually happen!
For the main shatter everything starts at the centre of the ceiling and radiates outwards. If I had used the actual distance from the centre the shockwave would have spread out at inconsistent speeds due to the shape of the ceiling, so instead I used the UV position of the glass (which had been UVed evenly). I temporarily transferred the UVs and normals from the glass to the frame so they could both be displaced along those normals depending on time and UV distance from the centre. Everything was done in Houdini.
For the shattering I used the classic Voronoi fracturing. With Houdini's relatively recent rock solid Booleans, cutting up geometry with shapes has become a popular method for achieving a different look in fracturing, however I felt for glass, Voronoi gives a good look. I did the fracturing within a foreach (pane of glass) loop so the fracture lines didn't cross over from one pane of glass to the next as that wouldn't happen in the real world. In scattering the points for the fracture I was sure to turn off "Relax Iterations" so there's no attempt to spread out the points evenly which would result in more uniform sized shards of glass. Even so, it does result in relatively similar sized pieces, so after the initial fracture I had a proportion of those pieces fractured again, resulting in a wide range of sizes.
Of course, everyone knows when they drop a glass not only do you have the main pieces to pick up, there are also hundreds of tiny pieces to wipe up. For this I had the edges of the glass where it breaks emit thousands of particles, then instanced tiny pieces of glass onto them. While not strictly volume conserving of the original glass, trying to fracture the glass to that degree would be impractical and visually is indiscernible.
For the dynamics themselves I applied an initial force in the direction of the normal and added a random rotation so everything moves off with bang instead of just leaving it gravity. I also applied an outward force for those pieces in the centre as we wouldn't want the Doctor being showered in glass. Once the pieces get below waist height I simply switched their dynamics off as an optimisation and to prevent them crashing back into frame. Once I was happy with the simulation I cached it to disk and time warped as needed. The final ingredient was taking part of that cache, duplicating it and moving it in front of camera to keep the Doctor more obscured than the original amount of glass would allow.
Having done all this, I'd say probably the majority my time went to a less technical side of things- pushing and pulling the time warping along with the camera move to get everything feeling just right!