Simulating Tower Destruction

Greg Oleśniewicz shared his experience of taking CGMA course Introduction to FX in Houdini and showed the way he created awesome Tower Destruction simulation.

Greg Oleśniewicz shared his experience of taking CGMA course Introduction to FX in Houdini led by Manuel Tausch and explained the way he created awesome Tower Destruction simulation.

Introduction

Hello, my name is Greg. I’m from Warsaw, Poland. I work as a Senior Motion Designer in the advertising industry. I’ve always liked watching massive effects in movies or games and I decided that I wanted to know how to do that kind of stuff, so here I am. As for now, I’m focusing on learning as much as I can. I don’t know if it will take me to the games or film industry, but I’m kind of open to that as I love both the same way.

CGMA Course Goals

My goal was to get a grasp of Houdini in general. Before I was watching many tutorials and managed to get through them but without understanding what was really going on. I wanted to start to understand Houdini, not just to learn a few tricks. And I can say I’m 100% satisfied with this course.

It took me a long time to decide on taking it since it does cost a few bucks, but it’s really worth every dollar. Having a mentor like Manuel Tausch who’s actually there for you not just to get by but to help you to improve is what makes the difference. If you can’t decide whether it is worth it and if you should take it – it is and you should. Do it, it’s awesome!

Destruction Simulation

To correctly describe in detail how the simulation works I should write a book about it, but I’ll try to keep it short.

The main word for every aspect of this sim is proceduralism. The tower is built procedurally, the way it’s fractured is procedural, the way it collapses is procedural and so on. In practice, it means that anytime I want I can go back and change anything. It takes more time in the beginning to build all the complex systems, but after that, I don’t have to remodel anything. For example, if I want to change the number of floors in the tower to 5, I can just move the slider to 5 and everything automatically updates. I think in production it is crucial to be able to go back to any step you want and make a quick change.

The sim structure is kind of layered. As I’ve mentioned the tower is built procedurally. As for the fracture of the tower, it’s made with custom-made HDA which uses Voronoi Fracture and looks up the geometry to specify how much and where the cuts should be made. The geometry for the cuts is manually placed as it is more of an artistic choice where they should appear.

The fracturing is divided into two parts: the lower tower part and upper. The lower part gets some initial velocity so it explodes at the beginning of the sim. Then the fractures get constrained with some attributes telling them when they should break.

The bolt is just 2 curves that emit particles, no physics here just vex and some custom attributes. There are a few layers of small effects added to make it look pretty.

The simulation gets triggered with the distance threshold from the bolt and when the lower part explodes the upper part follows.

The collapsing is a physics-based simulation. The only custom additions are limits for the speed of collapsing parts so that they don’t go too crazy.

Smoke & Debris

When the collapsing is done and cached, it’s turned into points which are the source of the smoke and the debris. They share the same source but these two elements are done independently from each other because at this camera angle there’s no need for the debris to interact with the smoke.

First the smoke. This is something that took most of the time to make it look as it looks now. It’s mainly physics-driven with some custom fields here and there to enhance it a bit. The way to make it look good is going back and forth and adding one effect at a time. I’ve added the turbulence, tweaked it until I was satisfied, then added some disturbance and so on. For the sake of the optimization, it’s divided into wedges. The calculation took a LOT of time.

The debris is something Manuel suggested I should add after the course, – and here I want to thank Manuel for staying in touch after the course was finished and helping me to take this scene to the next level. There’s a lot of debris but only a small percent is visible because of the smoke. Nothing fancy with this sim. They re-emitted from the points with some custom initial velocity and rotation. The emission also fades out until the end.

And that’s about it. It just took a crazy amount of time and constantly going back and forth, but is totally worth it.

The start was pretty simple: a few pieces, a small liquid container with big resolution, a few points. With every iteration it’s all growing bigger and bigger, the calculation takes more and more time. It’s really important to start simple and build on top of that.

Feedback

During the course, I’ve learned a few lessons. The first would be to divide everything into smaller parts and not to try to simulate everything at once. The second – cache everything. It really makes your life easier especially when you are building one effect on top of another.  

But the most important thing is that I started to understand the logic behind it all, not just Houdini but also math behind VFX, coding and so on. And I’ve learned it thanks to how Manuel build this course. The materials are really hard, and there are so many topics in the course that I can’t imagine getting all this knowledge in such a short period of time by just watching tutorials online. And trust me, there’s also a lot of things you won’t find in the online tutorials.

I’m really happy that I’ve decided to enroll in this course and I highly recommend it to anyone who wants to learn Houdini. Thanks to CGMA and to Manuel Tausch!

Greg Oleśniewicz, Senior Motion Designer

Interview conducted by Kirill Tokarev

Join discussion

Comments 0

    You might also like

    We need your consent

    We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more