Simple Teapot Shatter Scene


I am a researcher in computer graphics trying to demonstrate a custom renderer on a scene involving the Utah teapot.

My idea for the scene is a clear glass teapot that has just been shot with a bullet. The pieces are exploding everywhere. I’m hoping someone could make that scene–and I’d of course be happy show the result when I’m done.

Here’s a concept art image I drew to show the idea:

The only real difficulty I anticipate is that the glass must have pretty hefty thickness (and the standard Utah teapot model doesn’t have any). 10 million polygon budget (shooting for around 10,000-100,000), no special materials; I’m just going export to .obj. No rush: I have a month or two.

-G there you go. shouldn’t take you more than an hour

lol ST I’d double that
and maybe a week if its yer first time in blender

Is this close to want you want?

He’s in no rush, i’m sure he can find an hour or two over the next couple of months. :wink:…acture-add-on/ there you go. shouldn’t take you more than an hour
Aye, I’ve seen the cell fracture before, but I wasn’t able to get much that looked right (and there were some oddities–like I couldn’t figure out why a thin sheet of glass would sometimes shatter lengthwise). I spent a day just trying to get my simple test case right.

Is this close to want you want?
Very. I was thinking a somewhat different camera position, background, and position-of-entry, but those were mainly just ideas to get started. I think can handle tweaking the first two myself, and the third doesn’t really matter for showcasing the algorithm.

We’re focusing on homogenous media and chromatic aberration from glass materials and the lens system, so the important thing is lots of glass surfaces. I thought we might also be able to handle the shock distortion of a supersonic round, which would be added procedurally.

Is there an animation that goes with this? If so, I think it might be useful to actually model the round (so that the teapot doesn’t just randomly explode). If not, I’ll take it as is.


I can certainly give you the 2 animations from this, although if you’ve got a month or two you mind as well just spell out exactly the effect you want and I can rebake everything. The camera angle and background materials are trivial, the important things:

  1. Thickness of the shards overall, too big, too small, just right?
    1a) The number of shards, too many, not enough, just right?
  2. The points of entry and exit, just find an image and mark them, or explain
  3. The overall length of the clip in seconds.
  4. How high off the ground is the teapot floating (1 unit is a teapot)

So the teapot is just floating, a bullet passes through it, and once that happens gravity takes over and all the shards fall flush with the table?

Maybe the thickness on the spout is a bit too much, just because the spout itself is smaller, but I’d say the thickness is good overall. Three things come into play here:
1: Manifold geometry. The mesh must be watertight to handle refraction properly; Cycles is kindof flexible about this. Our renderer isn’t.
2: Optical effects. Thicker shards affect how light scatters: we’re concentrating on chromatic effects, which are strongest when they come from internally reflected rays: thicker glass gives more opportunity for that to happen.
3: I personally think chunky glass looks more glass-like. People wouldn’t make teapots out of paper-thin glass.

1a) The number of shards, too many, not enough, just right?
This one was tricky; my initial impression was that there are too few, but I notice we’re close to the right number of polys. The main constraint with that is memory usage. See also next point.

  1. The points of entry and exit, just find an image and mark them, or explain
    I realize in retrospect that my concept image scanned too poorly to make out this detail. I was picturing the bullet clipping the spout, then intersecting the wall of the teapot about 2/3 of the way up, and then hitting the inside far wall near or on the rear handle. The goal with that was to create lots of high velocity, smallish shards.

Really though, the point was to get different pieces of irregular glass in the air. I won’t know for sure until the algorithm is complete, but interactions of lots of close pieces of glass could be just as interesting as volume caustics from lots of far pieces of glass.

If you’d like to fuss with it, I’d say: lots more shards–especially smaller ones. I suggest the entry track described earlier to do that. If that means a lot more polys, well, I guess we can deal with that; I like very much how smooth the surface looks in the render.

One last constraint: at the point where most of the shards have been broken, the teapot should still be recognizable. To get high velocity shards, some of the smaller pieces will be far away by that time. This is fine (and desired); just so long as you can see it was a teapot. Your render above does exactly this.

This is also sortof an artistic thing. The more dramatic and exciting, the better. The bottom line here is that this is test data; we’re not too picky!

  1. The overall length of the clip in seconds.
  2. How high off the ground is the teapot floating (1 unit is a teapot)

So the teapot is just floating, a bullet passes through it, and once that happens gravity takes over and all the shards fall flush with the table?
The bullet/teapot interaction would take place over maybe 0.5ms, with the entire sequence playing out over maybe 5-10ms. At that scale, gravitational acceleration is not relevant and can be completely discounted. If you want to think of the teapot having been dropped and then shot in midair, that works; the point is that the teapot might as well be stationary with respect to the camera. The time to view the clip would be somewhere around 5 seconds.

To summarize: the easiest thing to do is to pretend the ground and gravity don’t exist.


This was trickier than I first thought. The cell fracture add on is all but out. It makes quick work of creating cracks, but if your requirements call for manifold topology I can’t see a way to use it. It does a great job of making the shading on the shards look great, but it’s all blender trickery. It cleverly uses a recursive boolean (terrible topology) operation and also edge split. What they don’t tell you in the wiki is that if edge split is applied it actually splits the mesh, making it non manifold. I played with remesh, but it wasn’t happening. I wound up topoing real geometry cracks onto the unfractured teapot. Solidifying them and using bevel and subsurf. Both of those can be applied while keeping it water tight. It’s all quad, although the bevel, if applied will add some tris. I would love to use edge split here to get those edges super sharp, butI don’t think it will work with your renderer. I’m still puzzling over that one.

Blender is being very fussy about keyframing the visibility on the unfractured teapot and the shards. In my mind the easiest way will be to render out 2 video clips:

  1. frame 1- 27 of the bullet and the teapot,
  2. frame 28-125 of the bullet and the shards.

There is no way (that I know of in blender) to truly fracture a mesh, or add geometry to it over time. So it’s the old 1-2, hide the first object and show the other one on the next frame.

Why don’t you take a look at the current version, and I’ll see about making the edges sharper. We can more little shards if you want, and I can show you how to adjust some rigid body parameters to run more test sims on your own, although overall this is more or less what I am able to do.

I think when you open the file you will need to run the simulation. Just make sure you are on the first frame and hit alt-a and let it run through once. This is cycles, 133 samples.

The blend on dropbox
Raw mpeg on dropbox

I think I’ll open a thread in modeling and see if anyone has any ideas how to create a sharp edge without edge split. The difference is subtle but shattered glass should be extremely sharp.

Image on dropbox

That entry trajectory is just what I was thinking of :slight_smile:

The model does need to be derived from the Utah Teapot though, preferably the squashed-y version (such as e.g. this); I could be mistaken, but isn’t that a different model? Also, having the top of the teapot be in the shatter would be nice.

I think the bullet is too large. I was thinking maybe 1/3 that size.

It would be nice to have more shards for the final result:
–I’m repealing my earlier polygon limit. It’s a lame excuse for my algorithm to only work on small data. Renderers should be able to handle whatever geometric complexity you can throw at it. 10^6, 10^7 is the new limit.
–The manifold geometry is indeed a constraint; mainly because the renderer tracks materials as multilayer scattering events on a stack. If the geometry is nonmanifold, you can get stack underflows, or out-of-order materials. We can probably handle a little nonmanifold geometry (because ray-primitive intersections aren’t perfect, and any renderer needs to be robust to that), but generally not.
–I’ll run some early tests on the .blend you gave me to see how much of a problem it is, though it might be a few weeks before the renderer is ready enough to really know.

Overall though, this is generally what I’m looking for. Thanks for the help so far!

If I had known exactly which type of pot you wanted it could have been replicated perfectly, unfortunately at this point with the workflow I am using it can’t easily be matched to that reference. I took proportional edit to both models and matched closer proportions, but as far as volunteering help it’s too much work to match the reference exactly at this point. If you wanted to discuss a paid project I can certainly match the model with photorealistic precision. And I would be happy to delve into the finer tweaks of the simulation and artistic effect. If it isn’t in the budget, well, the animation (and blend file) below is more or less what I can offer. I added more smaller shards and increased the video length 2 seconds. The bullet pushes a bit harder too. I’ll be happy to provide you the blend for the animation below, and give you a step by step of how to change the simulation parameters and re bake the sim.

looking good, are you using grease pencil for the fracture??

Thanks , read post #9.