This week we will enter the practice of simulating the effects of smoke, flames and explosions.
Ⅰ. SMOKE
Enter dopnet, create smokesolver_sparse and smokeobj_sparse, create volumesource to connect with them, I got this. We know that in real life, the flow of smoke in the atmosphere is related to humidity and pressure, so I need to establish these two key nodes to move in the volume.
After adding temperature to attribnoise, I got a simple #mushroom cloud#.
Changing the buoyancy and adding gravity can also change the way the smoke moves. Next, I need to add lights to the smoke. (I haven’t installed the Arnold renderer, so I temporarily use Houdini’s built-in light instead). Create two lights in obj, and then return to the geo panel.
Next, I try the effect of smokesolver. It can be seen that gas will flow in a fixed container.
Therefore, my understanding is that the difference between smokesolver and smokesolver_sparse is that the former is to perform simulation calculations in a fixed space; the latter will not be limited to the space but will continue to spread (and correspondingly waste part of the simulation resources).
Ⅱ. FIRE
Next step,I tried to make simulation of fire.
It’s very strange that the fire I made according to mehdi’s method is completely different from the effect he produces. His fire is like a fire, but mine is still a smoke. I have no idea what happened…
After I asked for help through discord, I tried to cancel the dissipation option in the shape in pyrosolver_sprase, but it still didn’t work. So I had to temporarily suspend my simulation and ask mehdi for help.
After communicating with Mehdi, unfortunately,I found that this is a bug !
The solution is actually very simple, which is to completely delete the original volumesource, establish a new volumesource and connect to it. Finally, I followed the steps.
Adjusting the value of disturbance can make the flame more dispersed.
The following is the effect of adding gaswind. When there are more attributes, we can use merge to aggregate.
Since my Arnold renderer has been having problems, I use scene view instead of render view.
Next, I will learn how to make an explosion simulation.
First, create a new geometry.
Establish the following connection. Adding density, temperature, flame, and divergence to souring in pyrosolver can give me an initial explosion effect.
It expends very quickly and it is going up.
Opening minimal openCL solve is beneficial to simulate the effect faster and save cpu resources.