POV-Ray : Newsgroups : povray.general : Not FOG! Rolling fog, smoke, etc. (ground)???? Server Time
2 Nov 2024 17:19:30 EDT (-0400)
  Not FOG! Rolling fog, smoke, etc. (ground)???? (Message 1 to 2 of 2)  
From: Johnny Smith
Subject: Not FOG! Rolling fog, smoke, etc. (ground)????
Date: 7 Mar 1999 05:12:06
Message: <36E251F8.BA2A2CC7@netjava.net>
Been playing with the media things off and on.
Honestly,  haven't been too happy with the ground fog,  and
constant fog.
Tried all sorts of variations,    transform,  scale,  octave,
turbulence,  etc.

I was trying to create a  "rolling fog".  I mean,  the THICK
fog you see in the world war 2 movies.  The kind that rolls
along the ground,  but is separated in places so that you can
clearly see the ground.  (it's kinda hard to explain)
Does anyone know how to create something like this ?


                                                       Thanks,

                                                       Johnny


Post a reply to this message

From: Jerry Stratton
Subject: Re: Not FOG! Rolling fog, smoke, etc. (ground)????
Date: 7 Mar 1999 15:19:43
Message: <newsw-0703991219430001@cx38767-a.dt1.sdca.home.com>
In article <36E251F8.BA2A2CC7@netjava.net>, joh### [at] netjavanet wrote:

>        Been playing with the media things off and on.
>Honestly,  haven't been too happy with the ground fog,  and
>constant fog.
>Tried all sorts of variations,    transform,  scale,  octave,
>turbulence,  etc.
>
>I was trying to create a  "rolling fog".  I mean,  the THICK
>fog you see in the world war 2 movies.  The kind that rolls
>along the ground,  but is separated in places so that you can
>clearly see the ground.  (it's kinda hard to explain)
>Does anyone know how to create something like this ?

This is a work-in-progress, but it might help you get started:

#declare Final_Render = 0;
#if (Final_Render > 0)
   #declare minsamples = 2;
   #declare maxsamples = 30;
#else
   #declare minsamples = 1;
   #declare maxsamples = 8;
#end

#declare endx = -10;
#declare farzstart = -100;
#declare farzend = 600;
#declare farx = 140;
box {
   <-endx/2,0,farzstart/3>,<farx/2,1,farzend/3>
   pigment {
      color rgbf <1,1,1,1>
   }
   interior {
      media {
         scattering {  1, .25}
         intervals 5
         samples minsamples, maxsamples
         confidence 0.9999
         variance 1/1000
         density {  
            gradient y
            turbulence <.3,.9,.3>
            color_map {
               [0 color rgb <1, 1, 1>]
               [0.25 color rgb <1, 1, 1>]
               [0.35 color rgb <.2,.2,.2>]
               [0.7 color rgb <0, 0, 0>]
               [1 color rgb <0, 0, 0>] 
            }
         }
         density {
            bozo
            turbulence <0,0,.2>
            color_map {
               [0.0  color rgb <1,1,1>]
               [0.3  color rgb <1,1,1>]
               [0.6  color rgb <0,0,0>]
               [1.0  color rgb <0,0,0>]
            }
         }
      }
   }
   hollow
   scale <2,3,3>
}


This creates a big flat box; the 'fog' goes from dense at y=0 to nothing
at y=1, using the 'gradient y' density, and then, to make it patchy, I
multiply it by a 'bozo' density. Remember that with multiple densities
inside of a media, the densities at each point get multiplied together. So
that, where the gradient y density is 0, it doesn't matter what the bozo
density is. This ensures that there are no sharp breaks at the top edge of
the box. Likewise, where the bozo density is 0, it doesn't matter what the
y density is. This ensures open areas.

Remember also that media are not unit insensitive; so if you play around
with the scaling, you'll also probably need to play around with the .25 in
scattering {1, .25}.

You may want to play around with other pattern types besides bozo to get
different effects. (I thought the 'mandelbrot' pattern type looked really
cool, but more appropriate for higher-atmospheric effects. Could make some
weird-looking clouds.)

Jerry
http://www.hoboes.com/jerry/


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.