// Dan Connelly // djconnel@flash.net #version 3.1; global_settings { max_trace_level 6 assumed_gamma 1 } camera { location <0, 0, -6> right <1, 0, 0> up <0, 1, 0> look_at <0, 0.5, 0> angle 35 } #declare R = 2; #macro Flame_Media(Emission, dV_Turbulence) intervals 1000 samples 1,25 confidence 0.99 variance 0.0025 emission Emission absorption 0 density { spherical cubic_wave turbulence <1, 2, 1> omega 0.6 octaves 6 scale 0.5 lambda 2.5 translate -dV_Turbulence warp { turbulence <3, 1.5, 3> octaves 6 omega 0.4 lambda 2 } translate dV_Turbulence color_map { [ 0 rgb <0, 0, 0> ] [ 0.5 rgb <1, 0.5, 0> ] [ 1 rgb <1, 1, 1> ] } } density { spherical cubic_wave scale R } #end #declare Rand = seed(3171); #declare Vy = 7; #macro rand3(Rand) #end #macro Flame_Media_Stack(Emission_Factor, dV) media { Flame_Media(10 * Emission_Factor, 100 * rand3(Rand) - Vy * clock * y) translate dV } media { Flame_Media(25 * Emission_Factor, 100 * rand3(Rand) - Vy * clock * y) scale <0.8, 0.71, 0.8> translate dV - 0.33 * y } media { Flame_Media(60 * Emission_Factor, 100 * rand3(Rand) - Vy * clock * y) scale <0.64, 0.5, 0.64> translate dV - 0.5 * y } #end #macro Flame_Object(Emission_Factor) box{ <-1, -1, -1> * R - x, <1, 1, 1> * R + x hollow no_shadow texture { pigment { color rgbt 1} finish {diffuse 0 ambient 1} } interior { Flame_Media_Stack(Emission_Factor, 0) //uncomment the following lines to make denser, slower flame //Flame_Media_Stack(Emission_Factor, -x) //Flame_Media_Stack(Emission_Factor, x) } scale <1.5, 2, 1.5> } #end object {Flame_Object(0.4)} background { color rgb 0 }