logo80lv
Articlesclick_arrow
Research
Talentsclick_arrow
Events
Workshops
Aboutclick_arrow
profile_loginLogIn

Creating a Foam Simulation with Houdini

Ben Watts explained how a standard FLIP simulation turned into a foam experiment, talked about its creation, and gave advice to beginner Houdini artists.

In case you missed it

More from the artist

Introduction

My name is Ben Watts, I’m a Houdini FX Technical Director. My good friend Justin and I are just about to launch our new CG studio – Rocket Lab.

I haven’t completed any traditional studies in 3D design. My skills accumulated through many years of experimentation using Houdini, reading the help files, and watching tutorials.

I’ve worked for most of the larger studios (The Mill, Framestore, MPC, etc.) and a lot of smaller facilities in both film and advertising. I’m definitely suited to the advertising space and enjoy the quicker turnaround projects much more.  

Some of the more memorable projects I’ve contributed to are American Horror Story, Dexter, and Paramount Animation Ident. There’s been a lot of fun gigs over the years.

I started playing with Houdini right around the start of 2015. I remember being so excited by the software that made complex things feel achievable. All this incredible work kept popping up online and most of the time Houdini was connected to it. That in itself was enough motivation to dig in.

Foam Experiments

Justin and I were sent a client brief that included a realistic beer pour. Initially, I began with a standard FLIP simulation. Once that was working nicely with the collision geometry, I looked at ways to initiate variable density. This gave us the ability to push the lighter foam particles to the top of the liquid allowing the separation of beer and foam. The tricky part was always going to be getting a perfect blend of beer and foam. At this stage, I had already created decent beer and foam separately and throughout our RnD testing, it looked interesting to render just the foam in isolation.

The first step in this case was to create the emitter, generally, just a noisy sphere does the trick. Next up is to play with the resolution, surface tension and drag, etc. Get the right feel in the sim. Nothing too high resolution at this stage, you want to keep things light as the iterations begin. I decided to drive the variable density by age on this project, there was a clear moment where the fluid would hit the collider for the first time, so some variation of age worked well here.

The foam bubbles are just a subset of the original particles. I had to make sure the bubbles didn’t protrude too far out of the foam, or else they’d end up inside the collider walls, so some compression parameters were added based on the main fluid’s gradient. This gives you a dome shape as opposed to a perfect sphere. Lastly, I added some bubble scale variation.

The foam adheres to collisions and forces the same way regular FLIP fluid does, it’s just meshed using volumetric techniques as opposed to ending up as polygons. I’m definitely in the midst of working on the liquid/foam combination, it’s almost there, just needs some time and a few tweaks.

As for the parameters, currently, there’s not too much to play with. Mainly bubble culling to dial in the number of bubbles and a control for how much squash and stretch is to be applied to the bubbles. I’ve got about 3 different methods for creating foam at the moment, so I’m still figuring out if this is the best one.

Conclusion

When you start learning Houdini, there’s so much to take in. It’s hard not to feel overwhelmed. I’d take things slow and enjoy the process. Definitely check out the SideFX website, there’s a lot of free and paid training available covering every aspect of Houdini. 

Ben Watts, Houdini FX Technical Director

Interview conducted by Arti Burton

Join discussion

Comments 1

  • Anonymous user

    any chance of getting the screen capture is a higher/readable resolution?

    0

    Anonymous user

    ·10 months ago·

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