Home Artists Posts Import Register

Content

Hey everyone! I've been cooking up some really fun moments for the angel-flutterbat animation - yes, I'm still working on that! For a long time I've been theory-crafting various ways of making cloth breaking and tearing really look good, and I'm getting to be pretty satisfied with the methods I've come up with!

I should start by explaining that cloth ripping is really hard. Think about it this way, how many big tentpole VFX blockbusters feature shots of digital cloth getting torn? Very few. I think there are a handful of shots across the like 7 spider-man movies. Usually if a film wants to show cloth tearing for whatever reason, they'll use real cloth. Because it's much easier.

Why is it so hard? Well, partially because there isn't much demand for effects like this, so computer graphics research has gone into hard-body destruction and volumetrics. Wood splintering? Concrete crumbling? Glass shattering? Millions of dollars of research and tool building, perfectly realistic straight out of the box. Cloth ripping? Huh? why would you want to do that?

Mainly though, cloth ripping is also inherently very difficult. Cloth simulation is already pretty hard, and cloth ripping requires dynamic modification of a mesh object, a thing that mesh objects famously do not like to do. Not only that but the actual simulation maths of how stress behaves in cloth, where failures first occur and how they propagate is essentially incompatible with the abstractions normally used to calculate existing cloth simulations. Really, and I'm not exaggerating here, the best way to accurately and efficiently simulate cloth tearing is to actually simulate every single fiber of a peice of cloth. A thing that is currently only kind of happening at the cutting edge of CG research

So what's the solution? As usual, we fake it! Here's a proof of concept piece I made several years ago:

What's happening here is essentially five cloth simulations one after another, each one picking up from where the last one left off with new holes in the cloth. The holes are cut manually, and the simulation is created piece by piece, using the last mesh as the starting point each time. In blender, I do this using carefully managed shape keys. 

There's an interesting "wrinkle" where it's easy to it's easy to accidentally create plastic deformation, since each new simulation takes the starting position as the "rest" state of the cloth, allowing it to stretch further each time. This bug can actually be a feature, since you can use shape keys to push the rest state of the cloth back to it's starting geometry every time it snaps, giving a pleasingly elastic little "bounce back". You also don't have to push it back all the way, allowing the artist to finely control the ratio between plastic and elastic deformation to reflect different cloth types! For example, a cotton knit will deform very plastically, a lycra knit will be very elastic, and a cotton twill will be very inelastic.

However, this technique has major limitations. It's almost impossible to do long, continuous "zip" tears with it (or actual zips, for that matter). There's a kind of explosive complexity to the process as well, where in simple and controlled circumstances it can look very convicing, and the more steps, pins and complex geometry you add the more messy and weird the behaviour gets.

A way of getting around that in specific cases is to forego the simulation entirely! The animation I did with flutterbat's thong snapping is entirely done with armature animation and shape keys, with a mesh replacement at the moment of failure! This is more of a further development of the cloth animation workflow I developed working on study break.

Hope you enjoyed this look into my endless technical ramblings and fiddlings! Maybe I even made some sense.

Files

Comments

No comments found for this post.