1
$\begingroup$

I've been trying to get a realistic plume of smoke (would be coming out of a gun) but I can't get it to look white, let alone smooth and puffy. Here's a screenshot:

enter image description here

Here's the example of what I am trying to achieve:

enter image description here

Here's the .blend

$\endgroup$
3
$\begingroup$

Lightly colored smoke is heavily reliant on multiple scattering to produce the bright color - it's the result of light bouncing multiple times in the cloud and being reflected back to the viewer. Your material is off to a good start with white scatter color and no absorption, this will allow maximum reflectivity within the cloud. (maybe too much, actually, nothing is perfectly reflective).

But you didn't set the volume bounce depth > 0, so your volume blocks all light that doesn't make it out of the volume the first time it scatters. Increasing volume depth to allow indirect (multiple) scattering gives a whiter plume

volume bounces

example image showing the effect of increasing volume depth

However, you might also notice the increased depth images are noisier. (they're also slower to render). This is a side effect of increasing volume depth, it increases the possible light paths through the scene, resulting in noise until they are all sampled. If this is a problem, you can instead leave volume depth at zero and use an add shader to add in some volume emission. Not perfect, and won't react to changing lighting, but it can get you by sometimes

example of using emission to fake multiple scattering

As for the smooth look, that's just a side effect of density. Lower density clouds don't shadow as much light, which obscures surface details. You may want to consider adjusting your ColorRamp node as well to give less harsh edges to the cloud.

| improve this answer | |
$\endgroup$
  • $\begingroup$ Awesome great explanation. Didn't know about the volume bounce depth...think that worked better for me than the shader solution. $\endgroup$ – lakerice Jul 9 '17 at 17:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.