#version 3.1; #include "firewrks.inc" #macro Cb(layers, stepnumber) (layers*abs(stepnumber)) #end union { //yellow #local At = <0,150,0>; #local Cl = colour rgb <1, 1, 0>; // sphere {At,(7*3)+6 pigment { Cl } } //Boom3(Center, BaseRadius, StepRadius, Layers, BaseNumber, StepNumber, RandFactor, RandSeed, Colour) Boom(At, 6, 3, 7, Cb(7,-3)+5, -3, 3, seed(2), Cl, 2) DoubleRay(At, 0.5, 400,85, colour rgb<1,1,.8>, <1,1,.8>) } union { //Green #local At = <-50,210,20>; #local Cl = colour rgb <0, 1, 0>; // sphere {At,(7*3)+6 pigment { Cl } } //Boom3(Center, BaseRadius, StepRadius, Layers, BaseNumber, StepNumber, RandFactor, RandSeed, Colour) Boom(At, 6, +3, 7, Cb(7,-2)+6, -2, 3, seed(3), Cl, 1.1) SingleRay(At, 0.4, 800,95, colour rgb<1,1,.8>, <1,1,.8>) } union { //Red hit #local At = <35,125,-15>; #local Cl = colour rgb <1, 0, 0>; // sphere {At,(6*2)+6 pigment { Cl } } //Boom3(Center, BaseRadius, StepRadius, Layers, BaseNumber, StepNumber, RandFactor, RandSeed, Colour) Boom(At, 6, 2.2, 6, Cb(6,-4)+6, -4, 3, seed(4), Cl, 1.9) DoubleRay(At, 0.38, 500,75, colour rgb<1,1,.8>, <1,1,.8>) } union { //Blue hit #local At = <-5,110,0>; #local Cl = colour rgb <0, 0, 1.5>; // sphere {At,(7*2.5)+6 pigment { Cl } } //Boom3(Center, BaseRadius, StepRadius, Layers, BaseNumber, StepNumber, RandFactor, RandSeed, Colour) Boom (At, 6, 2.5, 8, Cb(8,-4)+6, -4, 3, seed(267), Cl, 0.6) SingleRay(At, 0.35, 600,85,colour rgb<1,1,.8>, <1,1,.8>) } union { //Magenta hit #local At = <30,170,-10>; #local Cl = colour rgb <1, 0, 1>; // sphere {At,(7*2.5)+6 pigment { Cl } } //Boom3(Center, BaseRadius, StepRadius, Layers, BaseNumber, StepNumber, RandFactor, RandSeed, Colour) Boom (At, 6, 2.5, 7, Cb(7,-5)+6, -5, 3, seed(267), Cl, 1.1) DoubleRay(At, 0.35, 600,85, colour rgb<1,1,.8>, <1,1,.8>) } union { //Cyan hit #local At = <-45,140,15>; #local Cl = colour rgb <0, 1, 1>; // sphere {At,(7*2.5)+6 pigment { Cl } } //Boom3(Center, BaseRadius, StepRadius, Layers, BaseNumber, StepNumber, RandFactor, RandSeed, Colour) Boom(At, 6, 2.5, 7, Cb(7,-3)+6, -3, 3, seed(267), Cl, 0.9) SingleRay(At, 0.35, 600,85,colour rgb<1,1,.8>, <1,1,.8>) } union { #declare Cl = colour rgb<.8,.3,.3>; #declare Am = <.8,.3,.3>; #declare Radii = 0.5; #declare Num = 400; #declare Rot = 95; DoubleRay(<-05,140,-05>, Radii, Num, Rot, Cl, Am) DoubleRay(<-05,150,005>, Radii, Num, Rot, Cl, Am) DoubleRay(<005,160,-05>, Radii, Num, Rot, Cl, Am) DoubleRay(<005,150,005>, Radii, Num, Rot, Cl, Am) DoubleRay(<-10,140,-10>, Radii, Num, Rot, Cl, Am) DoubleRay(<-10,150,010>, Radii, Num, Rot, Cl, Am) DoubleRay(<010,160,-10>, Radii, Num, Rot, Cl, Am) DoubleRay(<010,150,010>, Radii, Num, Rot, Cl, Am) DoubleRay(<000,140,000>, Radii, Num, Rot, Cl, Am) translate 60*x } height_field { png "mount.png" smooth translate <-.5,0,-.5> pigment { gradient y turbulence <.4, .5, .2> octaves 6 omega 1/10 lambda 1.5 colour_map{ [0.0 colour rgb <.05,.05,.05>] [0.8 colour rgb 1] [1.0 colour rgb 1] } } finish { ambient 0.04 diffuse 0.98} scale <300,60,300> rotate <0,90,0> translate <0,00,-50> //Camera is at -75 } #declare colTree=rgb<0.52,0.46,0.43>; #declare txtTree= texture{ pigment{ granite color_map{ [0.0 color colTree*2 ] [0.5 color colTree*1 ] [1.0 color colTree*.5] } } normal{wrinkles 2 scale .3} finish{ambient .2} scale<1,6,1>*.3 } #include "GnarledTree" object { GnarledTree translate -20*y scale 12/11 translate <-30,45,-38> } fog { fog_type 2 distance 600 color rgbt <1,1,1,0.3> up y fog_offset 30 fog_alt 1 } #declare T_Clouds = texture { pigment { bozo turbulence 0.65 octaves 6 omega 0.7 lambda 2 colour_map { [0.0 color rgbt <0,0,0,0> ] [0.3 color rgbt <0,0,0,0> ] [0.5 color rgbt <0,0,0,1> ] [1.0 color rgbt <1,1,1,1> ] } scale <6, 1, 6> } finish {ambient 0 diffuse 1 } } sphere { <0,0,0>, 1 texture {T_Clouds scale 1/2} scale 100000 inverse } sphere { <0,0,0>, 1 texture { T_Clouds scale 1/3.3 } rotate x*20 scale 200000 inverse } global_settings { assumed_gamma 1.8 max_trace_level 30 ambient_light <0.8,0.8,0.8> } sky_sphere { pigment { gradient y color_map { [0.0 color rgb <0.3, 0.1, 0.2>/3] [1.0 color rgb 0] } } } camera { location <0.0, 20.0, -150.0> direction 1*z right 4/3*x look_at <0.0, 95, 0.0> }