Halloween Costume ideas 2015

VFX / Vanilla Fire and Smoke

I have been wanting to write this since a month ago, but it took me around a month long meditation to get a better understanding of the new Blender Fire and Smoke as in recent years have been further developed by Miika Hämäläinen.


The last update I could remember is Blender now has separate Fire and Smoke emission. But there are plenty to explore.

During that one month of "Fire and Smoke meditation", I studied and explored both Maya Fluid (for fire and smoke) and Blender Fire and Smoke at the same time.

In my opinion, Maya Fluid is more in-depth and detailed in term of breaking all kinds of attributes and parameters of the "fluid dynamics" (Density, Heat, Temperature, Fuel), while Blender Fire and Smoke is a lot more simplified and practical, easier to use and really sufficient for most production usages.

Maya's Fluid simulation is slower to simulate and to preview than Blender. While the rendering of Blender Fire and Smoke can be a bit slower than Maya (especially if in Maya it is using Pixar Renderman).

But it all depends on your workflow. Blender is infinitely scale-able.

STEP SIZE
Just a quick heads up, under Blender Material (Volume), there is option called Step Size. This is actually VERY important.

The smaller the number, the less noisy the Fire and Smoke will render, that is the theory. But if you are working with large scale dimension Domain of Fire and Smoke, you really don't need too small number.

If you use number that is too small, your render may become really, really slow. The difference between rendering for 8-12 hours and days.

So, watch this number carefully as you started rendering. Sometimes, a little bit of noise is adding realism.

\
I will now share you some notes based on my Fire and Smoke R&D. Hopefully they will be useful for you!

ARTICLE AND VIDEO TUTORIALS ON BLENDER FIRE AND SMOKE OUT THERE
There are already quite plenty of great Blender Fire and Smoke video and tutorials out there. I shall list all of them here:
http://www.miikahweb.com/en/articles/blenderfire
http://simulate4d.com/2011/10/blender-2-60-guide-to-smoke-fire-simulation/
http://www.blenderguru.com/videos/creating-realistic-fire/
http://blenderhd.wordpress.com/2013/03/11/rendering-large-scale-smoke-in-blender/

FIRE, SMOKE, LUST, CAUTION
  • Volumetric simulations and rendering swill take a lot of your time and your computer time. Hours or days of simulation and rendering overnight are commons.
  • You need plenty of HDD space to cache Fluid and Smoke simulation. You can easily use up GBs of hard disk space. Before you know it, it is full.
  • Know your RAM, CPU and GPU and how they affect the Fire and Smoke Simulation. You need bigger RAM to make sure your simulation does not run out of memory for high resolution Fire and Smoke. You probably need fast CPU and GPU for your simulation to move from one frame to the next a bit faster.
  • There is the whole process of Previewing (3D viewport), Baking the Simulation, Developing the Look (to refine the look), Final Render, Compositing.
EASY "VANILLA" SMOKE AND FIRE
Before I get into details of Smoke and Fire and all their parameters, I must show you the quickest and easiest for you to get some Smoke and Fire. I call this the "Vanilla" Smoke and Fire. Just like we have "Vanilla" ice cream and "Vanilla" Walk Cycle in Animation.

Here, we will learn the very basic.

The quickest is of course by using "Quick Smoke" command in Blender. You don't have to do anything, just select a mesh object that will emit Fire or Smoke and then tap Spacebar and write down Quick Smoke.

Run that command, and you have yourself a Fire and Smoke simulation!


The original selected mesh becomes the Emitter/Flow for Fire and Smoke. And Blender also created all the Fire and Smoke Material and Domain for you. The box shape is the Domain object where Fire and Smoke will live.

As you may notice, Blender 3D Viewport Fire and Smoke are super fast and quite a high quality. You can take this as advantage. You can actually move around the emitter object while playback is running (Alt+A) and get instant feedback of simulation.


You can scale the box shape (the Domain of Fire/Smoke) so that the smoke can rise higher and to fit your Camera view. When you are scaling your Domain, you may need to adjust the Resolution of your Domain.


Setup your camera and light and do a test render.

Blender "Quick Smoke" has already setup Smoke/Fire Material and Textures for you applied to the Domain object. Which means, if you hit Render, it will render the Smoke and Fire without problem.

UPDATE 2013.05.19

ISSUE: NO ALPHA TRANSPARENCY ON FIRE AND SMOKE?
Do not panic, this is not Blender bug, thing just changed.

I was actually panic the other day. I have been experimenting with Blender Smoke and Fire before 2.65 and now I am using 2.67, suddenly I found out that Alpha is no longer showing when rendering Smoke and Fire.

What is happening?

Luckily Thomas Dinge gave explanation:
"Make sure to switch from "Sky" to "Transparent" in the Shading panel (Alpha setting). The Alpha pipeline changed in Blender 2.66."
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Image_Transparency


PS: You actually MUST do this change in Alpha setting before rendering anything to get Transparency. I personally think that Transparent should be the default.


NOTE:
Later on, when you are creating your own Domain, Flow manually, you need to start thinking about the Smoke and Fire Material. You also need to note that the Fire and Smoke that is being displayed in 3D Viewport is not the really the final look of Fire and Smoke that you will get when you render it out. What you see is NOT what you get.

You may find that your smoke is too thick when you do test render. This is because "Quick Smoke" setup sets the Domain Material with Density Value of 5. This might be too thick. You can reduce the value to get thinner looking volumetric.


The Smoke is too thick, too much density. Reduce the Density value from Domain Material.
The density is adjusted.
NICE FACT: THICK = BIG SMOKE?
If you read and watched Blender HD Tutorial on the link above (and below):
http://blenderhd.wordpress.com/2013/03/11/rendering-large-scale-smoke-in-blender/#comment-14
http://www.youtube.com/watch?feature=player_embedded&v=mnXaD700bOk

He showed us an interesting fact about Light Cache, Density value and how those values will affect the quality of Smoke in a great way, as big thick or small smoke.

In some VFX works, super thick smoke sometimes is simulated by High Density Particles instead of relying on Volumetric alone.


I do not have fast computer, just a decent intermediate speed. The Blender HD guy's computer is super fast actually I am surprised that he goes to 300 Divisions and really hight Density with Light Cache off.


EMITTING SMOKE AND FIRE
By default, "Quick Smoke" setup for only emitting Smoke,  Luckily the Material applied to the Domain (for Fire/Smoke) has already set for both Fire and Smoke. So if you select your Fire/Smoke emitter mesh and change the Flow Type to Fire and Smoke or just Fire, you will see Fire and Smoke get simulated and previewed on 3D viewport. You can also render it out without any issue.


Fire Flow Type, with a bit of smoke.

Fire and Smoke Flow Type.

Fire Render Result.
The result of Fire and Smoke from Quick Smoke is quite decent. Perhaps not the most realistic looking Fire and Smoke, but you definitely can start from there and do tweaks on the parameters, until you get the look you want for your shot.

To get a faster simulation, you may want to turn on the Smoke Adaptive Domain:

Smoke Adaptive Domain will adjust the bounding box of Fire/Smoke Domain within Domain, and effectively running everything a lot faster. Works great if your Emitter Mesh is moving around, perhaps for something like Locomotive Smoke.


You may want to also turn on "Initial Velocity" under the Flow, so that you get the Velocity animation of your mesh (Emitter) to affect the Fire and Smoke simulation and you get much more realistic result.

And also, just in case you notice, Blender Smoke can have Color and the color will mix with other Smoke if you have multiple Smoke source.




To have a much better looking Smoke and Fire, you can also turn on Smoke High Resolution. But, keep in mind:

  • Increasing Domain Resolution and activating Smoke High Resolution is going to affect the actual simulation and behaviour of Fire and Smoke. Your Smoke and Fire can behave very differently when it is higher in resolution. Such as: Smoke will raise and dissipate faster if it is high resolution. It affects the fluid dynamic Buoyancy of Fire and Smoke, basically.
  • Higher Resolution = longer time to simulate and to render.
  • You want to choose to work in Lower or Higher Resolution from the beginning. 


3D Viewport Preview

Render Result, too thick again.
Render Result, Density value is reduced.
Alrighty, now, let's go back from scratch and re-create the "Quick Smoke", but more manually. This will help you in understanding Blender Smoke and Fire better.

STEP BY STEP  "VANILLA" SMOKE AND FIRE
1. Create Domain for Fire and Smoke
From the default Blender 3D scene, you already have a Cube. This box mesh object is the perfect shape for our Fire and Smoke domain. Fire and Smoke will only live inside their domain.

Scale the cube (hotkey S on keyboard) as you pleased in Object Mode and you do NOT need to apply the Scale, in fact you should NEVER apply the Scale once you scale the Domain because it will give strange result to the simulation. Also, do NOT modify your Domain object mesh in Edit Mode.


Once you have the domain ready in place, you simply tell Blender that the cube will be the Domain for Fire and Smoke. While selecting the Cube, go to Physics Tab under Property and apply Smoke Modifier and specify it as Domain.



You know it is working correctly when the Cube become Wireframe to indicate it as a Domain object for the Fire and Smoke.


2. Create Emitter for Fire and Smoke
Now, create another mesh object that will act as the source for Fire and Smoke. It can be any mesh. Sphere is a good shape. Polygon Plane Mesh is also good especially if you like to texture the emission.

I use Sphere mesh for simplicity of this example and place the sphere inside the domain.


While still selecting the Sphere, apply Smoke Modifier to the sphere mesh and specify it as Flow (Emitter).


We can tell if it is working properly if we play the animation (Alt+A) and the Blender start simulating and displaying a Smoke simulation in 3D Viewport.


By default, the Flow will emit Smoke only. You can change that under Flow Type, whether you want to emit Fire, Smoke, or both Fire & Smoke. Don't worry about that yet, we just set it to Smoke for now.

3. Test render your Smoke.
It will NOT work by default, you will get something that looks like below.


Black render of your Fire/Smoke Domain. What is happening? This is because we need to setup Volumetric Material for our Fire/Smoke Domain.

Get rid of the default Material and create your own Material, set it to Volume.



Now, we are getting something that looks like a Volume in the box shape of our Domain. We are not yet finished. It's a long way to go to create the basic Fire/Smoke material.

Next step, ZERO out the default Volumetric Density to make it fully transparent.

We will pipe in the Density influence from actual simulation via Texture. Once you set Density to zero, you now apply Texture to the Material and specify our Smoke Domain as Density.


Add Texture to the Material, this will sample (influence) the Density of the Smoke/Fire:


If you render it out now:


Finally, it is starting to look like Smoke.

I will not get into too much detail with Smoke/Fire Material and Texture in this post. As long you know the basic of Material and Texture workflow, should be fine for now.

EXAMPLE: Domain Texture using Voxel Data of Smoke Density and Ramp:



EXAMPLE: Domain Texture using Cloud to add variations:



Understanding how Blender blend and layer and mix Textures in Volumetric is main key to get a really good looking Fire and Smoke. 


USING THE QUICK SMOKE VANILLA MATERIAL FOR YOUR OWN SIMULATION
You can use the Smoke/Fire "Vanilla" Material from Quick Smoke as your starting point. Let say, you create your own Fire/Smoke Simulation. Then you create "Quick Smoke" on the side.

It's only 2 stepsprocess:

1. Simply apply and link the Material created by "Quick Smoke" into your Fire/Smoke Domain.


2. Make sure that the Material Texture "Smoke Density" and "Flame" both are pointing to the correct Domain (your Domain, of course,  not the Quick Smoke Domain).


That's all you need to link the Quick Smoke Material and Texture, into your Fire and Smoke simulation.

FUTURE POST OF FIRE AND SMOKE

On the next post of advance Fire and Smoke, I can probably get into more in depth about all these stuffs. The devil is really in the Details and getting Smoke and Fire to look awesome is the hard part.

Basically the workflow is like this:
1. Get the Fire and Smoke to simulate and behave correctly for your scene.
2. Work on the look of Fire and Smoke by adjusting the Material and especially the Texture of the Material. You can have a complex layering of texture, which can really improve the look.
3. Finally, some Compositing works needed to combine your Fire and Smoke back with your film plate or 3D animations. Fire and Smoke, for example, tends to produce this invisible heat that will distort the background. And Fire also has "Glow" effect that is required to make it more realistic.

Smoke and Fire are very practical VFX, unless one has really worked in production, those what counts.

CONCLUSION

Setting up Fire/Smoke Domain and Source (Emitter/Flow) is very "simple" and "easy" as you have seen. It is actually quite amazing what we have and what we can do on a single machine today.

But getting the Fire or Smoke to simulate and then to render beautifully is an ART form in itself. It takes a lot of experimentation and observation.

One could probably write a whole book to talk about Fire and Smoke and all kind of Volumetric and Elemental VFX. And there are few books around that discuss and look into this in depth.


EXTRA NOTE: DOMAIN OF FIRE AND SMOKE
Fire and Smoke will only live inside the Domain.

The Domain dimension should be large enough to cover the Fire/Smoke and with Resolution high enough for your Smoke and Fire simulation to be efficient and looks good.

EXTRA NOTE: EMITTER OF FIRE AND SMOKE
In recent Blender version, we can now emit Fire and Smoke from Surface/Volume of a mesh, instead of relying to Particles system for emission. They are both are there for flexibility, depending on your task, you will use either Surface/Volume and Particles for your Fire and Smoke Flow (emitter).

COMING SOON (OR JUST EXPLORE IT YOURSELF)
  • Particle Advection in Blender (Smoke/Fire Simulation affecting Particle). HINT: Flow Force.


  • Using Blender Dynamic Paint to Paint Fire 
FIRE AND SMOKE INSPIRATIONS:
  • Check out some Fire and Smoke works from GHOST RIDER.
  • Check out some Fire Illustration from Tony Wong Comics: Tiger Wong
  • Check out all kind of CG fire and smoke in recent years.
  • Check out some stylistic traditional animation fire (Disney and some Japanese anime or games)
  • Check out some writing by Duncan Brinsmead who is renponsible for Maya Fluid, it helps to understand about fluid dynamics. Maya's Fluid is quite similar to Blender, more or less.
FIRE AND SMOKE VIDEO REFERENCES
I took some video of Fire and Smoke during my 1 month meditation for you all to study:









Fire is supposedly "easier" and more straight forward to simulate than Smoke. Smoke is more subtle and harder to predict and setup. But both provide quite a challenge. Fire itself will burn or causing another elemental effect to other material.

From video references there, you might see Fire in different colors. Depending on camera exposure, fire looks either more Orange-ish or Yellow-ish, sometimes even fully white because of over exposure. Maybe our eyes is better at judging what real color fire is.

Bigger fire behaves differently than smaller fire.

Hopefully in near future, when I have time I can write and talk about all kind of Fire and Smoke:

FIRE: 
  • Candle Fire
  • Camp Fire
  • Dragon Flame
  • House Burning Fire
  • Paper Burning
  • Magical Fire
  • Phoenix Fire
  • Explosion Fire
SMOKE:
  • Burning Oil Smoke (black, thick)
  • Volcano Smoke
  • Smoke Puff and Bamf
  • Atomic Bomb Mushroom Cloud Smoke
  • Smoke as Cloud
  • Teapot Smoke
  • Cup of Coffee Smoke
  • Smoke from Cigar or Cigarett
  • Smoke from Car
  • Smoke from Train/Locomotive
  • Dust
  • Magical Smoke
  • Airship/Engine Smoke
  • Explosion Smoke

SPECIAL THANKS
  • Miika Hämäläinen
  • Luis Pages
  • Peter Shipkov
RELATED ARTICLE
http://www.fxguide.com/featured/sci-tech-oscars-technical-coolness/
http://thingsunasked.blogspot.com.au/2007/10/basics-of-maya-fluid-dynamics-by-dale.html

RENDER FARM
You will be needing render farm eventually, whether for the purpose of baking the simulation or rendering the simulation.
http://www.rendicity.com/

Post a Comment

MKRdezign

Contact Form

Name

Email *

Message *

Powered by Blogger.
Javascript DisablePlease Enable Javascript To See All Widget