Join Scott Pagano for an in-depth discussion in this video Emitting smoke from an object, part of Houdini Essential Training.
- [Narrator] Now we're going to take a look at how we can emit smoke from an object in Houdini. Volumetric simulation is another one of Houdini's really great strengths, and it's pretty straight forward to get the process set up. It's a huge area within itself that can have a lot of complexity, but one of the other great things about Houdini is that there's a really easy way to get a simple simulation set up and tuned. So, we've got our scene here, and I'm going to press play. We have our simple rings we've been using to illustrate just simple object motion. I'm going to hit my d key to bring up my Display Options. And under my visualizers tab, previously we had made this velocity attribute viewer.
And so I'm just going to confirm that there's this velocity on my object. And we're going to use that to help influence the direction of the smoke. Alright, I'm going to turn that off. So, I'm going to rewind to the beginning here. I'm going to go up to my PyroFX tab, and you can see these are all the options for creating different smoke and fire volume simulations. And one thing I want to point out. We're going to use the words volume and fluid simulation. So, these words are going to be interchangeably. And, even though this isn't a fluid, let's say like water or a stream or an ocean, often, just traditionally an sort of voxel volume simulation is called a fluid simulation.
In fact, if you click on this Fluid tab, you could see you have these different containers for Pyro, Smoke, Liquid etc. So, just so you're familiar with that terminology, if that might be new to you. Alright, so now I'm going to go back to our pyro effects tab, and I'm going to click on Billowy Smoke and then you can see it says select the source of the billowy smoke. I'm going to select my rings. I'm going to hit enter. Alright, now as with many of the dynamics nodes up here in our shelf you can see that it's automatically created a dynamic simulation. There's a bunch of nods in here with quite a few we haven't seen before, and then in our view port we can see that now we have a smoky version of our rings.
So, I'm going to go up a level here, and let's take a look at what we've got. We've got this pyro_import node. I'm going to bring that down here in pyro sim. This pyro_import node is basically what imports the results of the pyro simulation. So, I'm going to call this SMOKE_RESULT because this is where we'll actually get that volume out to cash it and render it. I'm going to bring up my colors. I'm going to make that yellow. And the pyro_sim, I'm going to call this SMOKE_SIM.
I'm going to make that purple. Right now, I'm just going to make sure my manipulators off. Just click on my select tool here. Make sure we're on Smooth Wire Shaded. And just right now without having done anything, I'm just going to press play. This depends on the speed of your computer, and obviously your view port will depend on some things in your graphics card, but I just kind of wanted to show you all of the sudden, we just don't have to do anything else specifically, yet we get this setup and we're certain to get smoke emitting from our objects. Pretty low resolution smoke, and it's kind of filling up the room right now as it goes, but I just wanted to illustrate this for now.
I'm going to change my timeline actually to 100, just so we don't have to simulate the full 240 frames on there to get it to play back. I'm just going to let this go, and we're just going to watch the results. Alright, so you can see obviously the timeline here is blue. So, that is cached in. And we can see the initial results of our smoke simulation, and now I'm just going to kind of take you through, and show you some of the nodes that got created. So, when you go back to the beginning, if we go into our rings, you can see that our last node at the end of our network was this _out, and now we've got this create_density_volume, merge_density_volumes and OUT_density.
And this create_density_volume is the main node to be concerned about here. And this is a fluid source node. And this is basically what turns the geometry into a volume source for fluid emission. Alright, let me go up a level, and now I'm going to go into the smoke simulation. So, I've got a couple nodes here, but really only a few that are the primary concerns. So I'm going to hit the p key to get my parameters window, and basically we're sourcing the initial volume. That's volume that got created in the fluid source node in this, which is a source volume.
And this basically is what brings the volume in to then emit smoke from in a smoke simulation. On the left over here we've got this Smoke Object and this basically is just sort of the core initial object that defines, for example, the initial size of the voxel grid and its resolution, and you can see there are quite a number of parameters down here. Fluid simulations can get very complicated very quickly, and we have a lot of control over all sorts of fine things.
One of the great things, for now, is that just to get started, we can not concern ourselves with dealing with all the little details. We can just do some broad strokes, just so we understand the fundamentals. And then the other main node here that tries everything is our pyrosolver. And this has a lot of different parameters, which are lot of the parameters we really tweak to stylize and to refine our simulation. And then the other nodes here are just standard nodes, and there's the standard gravity node that are there. Okay, so that is just the initial steps of getting a smoke simulation set up in Houdini, and now we're going to move on to refining this.
While known for its VFX strengths, Houdini has powerful tools for end-to-end 3D production for projects ranging from photorealistic visual effects to stylized motion graphics. In this course, Scott Pagano starts from the ground up to provide you with a solid foundation in Houdini. First, he takes you through the interface, covering topics such as global animation options, nomenclature, and viewport and display nodes. Next, he covers core geometry and animation concepts, followed by lighting, shading, and rendering techniques using the Houdini Mantra renderer. Once you have those primary 3D skills under your belt, Scott moves on to particles and volumes—some of the package's most lauded strengths. He wraps up with an overview of the package's compositing context, where you can create procedural imagery useful for processes across all contexts.
- Global animation options
- Viewing standard attributes
- Copying SOP with template attributes and stamping
- Caching geometry
- Exporting and importing Alembic
- Applying copy stamp channels
- Importing animation into CHOPs
- Caching animation data
- Rendering, shading, and lighting
- Setting up rigid body dynamics
- Collision geometry fundamentals
- Emitting particles from objects and attributes
- Rendering particles
- Emitting smoke from an object
- Refining smoke simulation
- Compositing layers