Sebastien Tafani talked about some amazing work he’s been doing with special effects for film and ads.
Sebastien Tafani talked about some amazing work he’s been doing with special effects for film and ads.
Hi, my name is Sebastien Tafani, I’m a French freelance Houdini FX TD. I was raised in Corsica, a beautiful island located in the south of France. I made all my studies there at the public university. There I started studying graphic design. I was already interested in CGI but I thought it was too complex to learn. Over the third year of my studies, I started learning 3DS Max by myself from scratch watching the few existing tutorials on the web. I practiced all the different aspects of CGI from modeling to rendering. Some time later, I started working as an Arch Viz artist for one company. After that I started doing different interviews for the website iamag.co. I was lucky enough to speak with really talented people (VFX supervisor, Concept Artist, FX TD). At the same time, I started learning FX in 3DS Max using FumeFX, Particle Flow and Thinking Particles. Some of these wonderful people recommended me to some companies in Paris where I started doing FX gigs. I’ve been making some nice commercials (Cartier, Kellogg’s, Boombeach) over the first two years sticking with 3DSMax. Then I got introduced to Houdini while working on a project and I started practicing Houdini stuff in my free time. Later I was hired at Rodeo FX in Montreal, using only Houdini as a main software and working on feature films and TV shows like Game Of Thrones Season 6 and 7, Pirates of the Caribbean: Dead Men Tells No Tales, Fantastic Beasts and Where to Find Them. Last year, I started teaching at Artline, an online VFX school in France, and also at the university where I studied. In few weeks, I will also release a course for Pluralsight on making a collapsing glacier simulation in Houdini.
VFX production pipeline
Let’s say, it’s a kind of rough map followed by most of the companies in visual effects. That being said, each one of them chooses to enhance one department or another, depending of the market needs and the internal policy. In most cases, companies begin with development of a 2D department (Comp, Roto, DMP, CMM) which can cope with pretty much most of the simplest shots which don’t require CGI. Establishing a CG Department implies creating a department needed to produce every part of a CG shot from previz to lighting/rendering. It requires a huge amount of human resources and materials without forgetting all the devs and IT guys behind all the tech and tools people needs to work even faster. All of this is just a technical part of the whole picture, let’s not forget the management team without whom working would be a hell on earth. Each part is glued to the others and building up a shot is really a matter of teamwork. Overall, technologies evolve, new technologies and software are introduced every day. Some of them are included in the pipeline in order to get a faster result or a better quality in a lesser amount of time or with lesser needs of human resources. But again, it may depend of the internal policy. I’d love to say that Houdini, which is a really powerful and versatile software, is used as a main tool by most of the CG department but unfortunately not. It still requires some times for non-FX people to learn Houdini and grasp all the benefits to use it as a main tool in previz, layout, set dress department and even for lighting and rendering. But some companies have already been using Houdini for quite a long time now as a main software for almost all the CG department.
The biggest strength of Houdini is its node-based procedural logic. You can basically build whatever you want or imagine. There are infinite possibilities to create the world, levels, assets. You can use it for whatever project you want. A lot of improvements have been made over the years to fix some issues with the modeling tools. Also, it can be used in post-production for layout, previz, environment setup, DMP, look dev, FX, Crowd, Lighting and so on. But I really think SideFX showed the true power of their software by filling the gap which existed between Houdini and video games engines by creating Houdini Engines which allows people to bring the advantages of digital assets inside Unreal or Unity. What makes Houdini so powerful is that you can finally understand and play with what’s under the hood of the software instead of being stuck with CG software which requires a bunch of additional plugins to work properly or coding skills to compile your own in-house tools. To sum up, I think you’ll get the best out of Houdini by using it on FX simulations and creation of the environment or procedurals assets for game.
In the course productions, whether you’re working in the game industry or in VFX industry, there are questions to keep in mind: What are my boundaries?
Boundaries in time (deadlines), boundaries in technologies (computation power and the amount of memory) and boundaries in financial resources (money). Indeed, as an employee, your interest and the one of the company you’re working for is to give the best result in the shortest time possible and when you get very familiar with Houdini, you can be sure this goal can be achieved.
During a productions whether you’re working in the game industry or in VFX industry, there’s a questions to keep in mind: What are my boundaries?
Boundaries in time (deadlines), boundaries in technologies (computing and memories resources) and boundaries in financial resources (money). Indeed, as an employee, your interest and the one of the companies you’re working for is to give out the best result in a minimum amount of time and when you’re getting very familiar with Houdini you can be sure this goal can be achieved.
They are many contexts to work with in Houdini. It’s like playing with a huge sandbox. As an FX TD, you’ll probably find yourself using them all, but in most cases, you’ll have to deal with the SOP context (Surface Operator) and the DOP context (Dynamics Operators). Basically, the difference between them is a question of time. In SOP, operations do not progress over time, unlike in DOPs, every piece of data, whether it is the volume or points, is computed by taking the data from the previous frame into account. Basically, inside DOPs you can use data from SOP and then compute it, thanks to solvers. Solvers are small programs which employ mathematical and physical calculations to help us simulate natural phenomena like fire and smoke or liquids or again, destructions and dynamics deformations of surfaces. Houdini also has some great tools to optimize your simulations and get the best result using less data. You can do distributed simulations which means that you can split up your simulations in several parts and run them independently on many computers. You can also do some wedging which consist of running the same simulation a certain number of times with different parameters.
Also, it’s good to keep in mind that the same work can differ greatly from one area to the other. Indeed, the constraints in VFX production and those in video game industry are quite different. Certainly, in the VG industry you’ll have to optimize a lot to reduce the amount of data used, so that the game engine can run the game. That’s what makes the goal of getting the best render even harder to achieve.
Destruction or liquid simulation tools
Houdini offers a lot of solvers among which Rigid Body (destructions), FLIP (liquid), POP (particles) and Pyro (smoke) solvers are the most commonly used. The software also counts a bunch of others great solvers like the Grain solver (sand, soft body, surface deformation), FEM solver, Wire Solver, Ripple solver and many others. Basically, you can achieve whatever effect you want. By using the Rigid body solver, you can simulate effects like dramatic destruction of structures or pre-fractures. By using the FLIP solver, you will create effects like a dynamics ocean (either calm or stormy with a lot of foam and interaction with objects) lava, viscous liquid (honey). The POP solver is essentially focused on doing particles related simulations like secondary debris, mo-graph effect with a lots of particles advected by volumes etc. Finally, the Pyro solver allows you to generate volume-based simulations to creates effects like clouds, fog or explosions and smoke simulations. Also, the thing which is absolutely fantastic with Houdini is that all those simulations can interact with one another. You can even, in some cases, run multiple simulations at the same time thanks to the multisolver.
Case study: Glacier collapsing into the sea
Let’s anatomize an effect as an example. I’d like to simulate a Glacier collapsing into the ocean. You can even do the modeling of the glacier from scratch inside Houdini. Indeed, there’s a very nice method covered by Saber Jlassi during the SIGGRAPH 2017 ‘’Procedural Rock Formations for UE4’’.
Prepare your geometry
Once you have your geometry ready to use, you have to prepare it for the rigid body simulation. Considering you have to keep the right scale inside Houdini which is the meter unit by default, you may have to rescale your geometry up or down if you created it using other software. Then, it’s also a good thing to optimize your geometry. Indeed, the more complex and detailed your geometry is, the longer your simulation will be and that’s definitely not what you want. Houdini has some very nice tools to reduce and clean your geo (polyreduce, remesh, convert to vdb and convert it back to polygon). Once your model is ready, you can start fracturing it. It’s useless to make your chunks hi-res, you can do it later.
Rigid body simulation and secondary debris
Let’s make each of frags unique and pack them. Inside the DOP (Dynamics Operator) merge the frags and create a constraint network which will link your pieces together through a web-like network of lines created in SOP. The next step is to dynamically destroy these constraints by using forces and the SOP solver which will destroy the constraints. To make your simulation more detailed, you can add a secondary simulation of debris by using the debris source and the POP solver. Don’t forget to cache everything by using versioning folders.
You can now create the kind of ocean you want by using the ocean spectrum and ocean evaluate tools from Houdini. These tools have been updated and is now they are more powerful than before. You can add easily create a seamless and infinite ocean surface and add procedural foam generated by points scattered over the surface.
Flat Tank creation
Let’s now create a flat tank. One of the simplest way to create the FLIP tank inside Houdini without wasting time with setting all the parameter dependencies is to use the shelf tools. After that you’ll just have to tweak your simulation parameters to get the best result out of it. Don’t forget to add your frags as a collision geometry once you’ve converted it into VDBs. All the meshing workflow should have been created by the shelf tools. You’ll just have to displace your flat ocean from the one previously created and mask the interaction with the velocity generated by the frags collision.
Whitewater and Mist
Finally, you can use the shelf tools again to generate those secondaries and tweak the parameters as you wish. After all that, just cache everything and render it using mantra to have the benefits of all the Houdini power.
Approaching Houdini work
I remember when I started using Houdini for the first time, I was completely lost. There were so many nodes and I had absolutely no idea what to do, how to start… The first thing to think of when using Houdini is your goal. What do I need to achieve? There is no the only way to achieve an effect, actually there are plenty. All you need to do is to try. For sure, you’ll need to understand what ‘’building a procedural setup’’ means, what the attributes are and you’ll need to figure out the basics on how CG software works. Anyway, you just have to try, practice and find what node fits the best to the effect you need to achieve. It’s not a difficult task as they’re named according to their functions. You’ll have to try a new approach, change your habits to optimize and get a better result. Sometimes you’ll succeed and sometimes you’ll fail but as long as you learn from it you’re on the right way. After that, it’s just a matter of time. But for sure, there’re two things to get used to: 1. Always have your geometry spreadsheet open and keep the help documentation open on your browser. This is definitely the best resource ever to keep learning Houdini. Besides, there are so many resources all over the internet, you’ll sure find someone facing the same issues as you. Honestly, I don’t know anybody who knows Houdini from scratch. Actually, that’s what is fun with this tool. It’s a kind of LEGO game where each node is another piece of the puzzle which will help you to get the final result once they’re put together. Every new kind of effects is a new challenge and that’s what makes this job so exciting and difficult at the same time.