global_settings { adc_bailout 0.003922 ambient_light <1.0,1.0,1.0> assumed_gamma 1.8 hf_gray_16 off irid_wavelength <0.25,0.18,0.14> max_intersections 64 max_trace_level 10 number_of_waves 10 radiosity { brightness 3.3 count 100 distance_maximum 0.0 error_bound 0.4 gray_threshold 0.5 low_error_factor 0.8 minimum_reuse 0.015 nearest_count 6 recursion_limit 1 } } camera { // Camera StdCam location <0, -1.5, 1.7> direction <0.0, 0.0, 1.8883> sky <0.0, 0.0, 1.0> // Use right handed-system! up <0.0, 0.0, 1.0> // Where Z is up right <1.33333, 0.0, 0.0> look_at <0, 0, 0> } // ******* L I G H T S ******* light_source { // Light001 <222.525, -205.135, 326.147> color rgb <1.000, 1.000, 1.000> } #declare Grass_Text = texture{ pigment{ gradient y turbulence 0.4 colour_map{ [0.0 colour rgb <0.10,0.55,0.06>] [0.98 colour rgb <0.10,0.45,0.09>] [1.0 colour rgb <0.4,0.21,0.04>] } scale <0.0001,0.0001,0.15> } // normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.2 diffuse 0.6 phong 0.4 phong_size 60} } #declare SepalText = texture{ Grass_Text } #declare PetalText0 = texture{ pigment{ gradient y turbulence 0.4 colour_map{ [0.0 colour rgb <0.90,0.95,0.18>] [0.98 colour rgb <0.90,0.9,0.08>] [1.0 colour rgb <0.85,0.55,0.08>] } scale <0.0001,0.0001,0.15> } // normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.3 diffuse 0.7 phong 0.4 phong_size 10} } #declare PetalText1 = texture{ pigment{ gradient y turbulence 0.4 colour_map{ [0.0 colour rgb <0.90,0.95,0.18>] [0.98 colour rgb <0.90,0.9,0.08>] [1.0 colour rgb <0.85,0.55,0.08>] } scale <0.0001,0.0001,0.15> } // normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.3 diffuse 0.7 phong 0.4 phong_size 10} } #declare PetCentreText = texture{ pigment{ colour rgb <0.05,0.15,0.08> } // normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.2 diffuse 0.7 phong 0.6 phong_size 10} } // Grass Parameters #declare PatShape = 0; #declare XStart=-0.5; #declare YStart=-0.5; #declare ZPos=0; #declare XEnd=0.5; #declare YEnd=0.5; #declare XStep=0.3; #declare XStepRand=0.25; #declare YStep=0.3; #declare YStepRand=0.25; #declare MeanBladeHeight=0.2; #declare HeightVar=0.25; #declare MeanBladeWidth=0.01; #declare WidthVar=0.25; #declare BladeTaper = 0.7; #declare MinAngle=4; #declare MaxAngle=30; #declare MinCurve=30; #declare MaxCurve=90; #declare MaxBladeSegs=24; #declare MinBladeSegs=18; #declare MaxBlades=8; #declare MinBlades=4; #declare R1 = seed(32); #declare ReedDebug = 0; #declare FlowerProb = 0.2; // Stem Parameters #declare MeanStemHeight=0.25; #declare StemHeightVar=0.25; #declare MeanStemWidth=0.005; #declare StemWidthVar=0.25; #declare StemTaper = 0.7; #declare MinStemAngle=4; #declare MaxStemAngle=30; #declare MinStemCurve=4; #declare MaxStemCurve=30; #declare StemCurvePower = 0.8; #declare MaxStemSegs=9; #declare MinStemSegs=6; #declare MinStems = 1; #declare MaxStems = 3; // Flower Parameters #declare PetNum = 9; #declare PetLen = 0.025; #declare PetBendLen = 0.012; #declare PetWidL = 0.004; #declare PetWidR = 0.004; #declare PetWidB = 0.004; #declare PetWidT = 0.003; #declare PetAng = 80; #declare PetKink = -15; #declare PetArch = -15; #declare PetTwist = 10; #declare PetCentRad = 0.007; #declare PetCentHght = 0.002; #declare SepalHght = 0.003; #declare SepalRad = 0.007; #declare FlowerSizeVar = 0.1; #declare PetTipLen = 0.001; #declare PetTipKink = 5; #declare PetRows = 1; #declare PetRowScale = 1; #declare PetRowOff = 0; #declare PetRowRot = 0; #declare PetRowAngOff = 0; #declare NumTri = 0; #declare GrassPatch0 = #include "Grass.inc" #declare PatchCount = 0; #while (PatchCount < 10) #declare XOff = (rand(R1)-0.5)*2; #declare YOff = (rand(R1)-0.5)*2; object{ GrassPatch0 rotate <0,0,rand(R1)*360> translate } #declare PatchCount = PatchCount + 1; #end #declare Grass_Text = texture{ pigment{ gradient y turbulence 0.4 colour_map{ [0.0 colour rgb <0.10,0.65,0.06>] [0.98 colour rgb <0.10,0.55,0.09>] [1.0 colour rgb <0.4,0.51,0.04>] } scale <0.0001,0.0001,0.15> } normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.2 diffuse 0.6 phong 0.4 phong_size 60} } #declare SepalText = texture{ Grass_Text } #declare PetalText0 = texture{ pigment{ gradient y turbulence 0.4 colour_map{ [0.0 colour rgb <0.60,0.45,0.98>] [0.98 colour rgb <0.60,0.5,0.98>] [1.0 colour rgb <0.65,0.55,0.88>] } scale <0.0001,0.0001,0.15> } // normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.3 diffuse 0.7 phong 0.4 phong_size 10} } #declare PetalText1 = texture{ pigment{ gradient y turbulence 0.4 colour_map{ [0.0 colour rgb <0.60,0.45,0.98>] [0.98 colour rgb <0.60,0.5,0.98>] [1.0 colour rgb <0.65,0.55,0.88>] } scale <0.0001,0.0001,0.15> } // normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.3 diffuse 0.7 phong 0.4 phong_size 10} } #declare PetCentreText = texture{ pigment{ colour rgb <0.35,0.85,0.38> } // normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.2 diffuse 0.7 phong 0.6 phong_size 10} } // Grass Parameters - second patch #declare XStart=-1; #declare YStart=-1; #declare ZPos=0; #declare XEnd=1; #declare YEnd=1; #declare XStep=0.25; #declare XStepRand=0.25; #declare YStep=0.25; #declare YStepRand=0.25; #declare MeanBladeHeight=0.1; #declare HeightVar=0.25; #declare MeanBladeWidth=0.005; #declare WidthVar=0.25; #declare BladeTaper = 0.7; #declare MinAngle=4; #declare MaxAngle=50; #declare MinCurve=30; #declare MaxCurve=100; #declare MaxBladeSegs=8; #declare MinBladeSegs=5; #declare MaxBlades=8; #declare MinBlades=4; #declare R1 = seed(2); #declare ReedDebug = 0; #declare FlowerProb = 0.03; // Stem Parameters #declare MeanStemHeight=0.4; #declare StemHeightVar=0.25; #declare MeanStemWidth=0.002; #declare StemWidthVar=0.25; #declare StemTaper = 0.7; #declare MinStemAngle=4; #declare MaxStemAngle=20; #declare MinStemCurve=120; #declare MaxStemCurve=181; #declare StemCurvePower = 0.8; #declare MaxStemSegs=15; #declare MinStemSegs=12; #declare MinStems = 2; #declare MaxStems = 4; // Flower Parameters #declare PetNum = 5; #declare PetLen = 0.01; #declare PetBendLen = 0.003; #declare PetWidL = 0.004; #declare PetWidR = 0.004; #declare PetWidB = 0.002; #declare PetWidT = 0.008; #declare PetAng = 80; #declare PetKink = -75; #declare PetArch = 35; #declare PetTwist = 0; #declare PetCentRad = 0.001; #declare PetCentHght = 0.001; #declare SepalHght = 0.001; #declare SepalRad = 0.001; #declare FlowerSizeVar = 0.1; #declare PetTipLen = 0.001; #declare PetTipKink = 5; #declare PetRows = 1; #declare PetRowScale = 1; #declare PetRowOff = 0; #declare PetRowRot = 0; #declare PetRowAngOff = 0; #declare GrassPatch2 = #include "Grass.inc" #declare PatchCount = 0; #while (PatchCount < 10) #declare XOff = (rand(R1)-0.5)*3; #declare YOff = (rand(R1)-0.5)*3; object{ GrassPatch2 rotate <0,0,rand(R1)*360> translate } #declare PatchCount = PatchCount + 1; #end #declare PetalText0 = texture{ pigment{ colour rgb <1,0.85,1>} normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.3 diffuse 0.7 phong 0.7 phong_size 40} } #declare PetalText1 = texture{ pigment{ colour rgb <1,0.85,1>} normal {wrinkles 0.3 scale <0.0001,0.0001,1000>} finish{ ambient 0.3 diffuse 0.7 phong 0.7 phong_size 40} } #declare PetCentreText = texture{ pigment{ colour rgb <1,0,1> } finish{ ambient 0.2 diffuse 0.7 phong 0.6 phong_size 10} } // Grass Parameters - third patch #declare XStart=-0.5; #declare YStart=-0.5; #declare ZPos=0; #declare XEnd=0.5; #declare YEnd=0.5; #declare XStep=0.05; #declare XStepRand=0.9; #declare YStep=0.05; #declare YStepRand=0.9; #declare MeanBladeHeight=0.05; #declare HeightVar=0.25; #declare MeanBladeWidth=0.004; #declare WidthVar=0.25; #declare BladeTaper = 0.7; #declare MinAngle=4; #declare MaxAngle=50; #declare MinCurve=30; #declare MaxCurve=80; #declare MaxBladeSegs=8; #declare MinBladeSegs=5; #declare MaxBlades=8; #declare MinBlades=4; #declare R1 = seed(4); #declare ReedDebug = 0; #declare FlowerProb = 0.03; // Stem Parameters #declare MeanStemHeight=0.2; #declare StemHeightVar=0.25; #declare MeanStemWidth=0.001; #declare StemWidthVar=0.25; #declare StemTaper = 0.7; #declare MinStemAngle=4; #declare MaxStemAngle=20; #declare MinStemCurve=20; #declare MaxStemCurve=50; #declare StemCurvePower = 0.8; #declare MaxStemSegs=5; #declare MinStemSegs=4; #declare MinStems = 2; #declare MaxStems = 8; // Flower Parameters #declare PetNum = 5; #declare PetLen = 0.009; #declare PetBendLen = 0.004; #declare PetWidL = 0.0015; #declare PetWidR = 0.0015; #declare PetWidB = 0.002; #declare PetWidT = 0.0001; #declare PetAng = 80; #declare PetKink = 20; #declare PetArch = 25; #declare PetTwist = -20; #declare PetCentRad = 0.0015; #declare PetCentHght = 0.001; #declare SepalHght = 0.0015; #declare SepalRad = 0.001; #declare FlowerSizeVar = 0.1; #declare PetTipLen = 0.001; #declare PetTipKink = 5; #declare PetRows = 1; #declare PetRowScale = 1; #declare PetRowOff = 0; #declare PetRowRot = 0; #declare PetRowAngOff = 0; #declare GrassPatch1 = #include "Grass.inc" #declare PatchCount = 0; #while (PatchCount < 30) #declare XOff = (rand(R1)-0.5)*2; #declare YOff = (rand(R1)-0.5)*2; object{ GrassPatch1 rotate <0,0,rand(R1)*360> translate } #declare PatchCount = PatchCount + 1; #end box { // Cube001 <-300, -300, -1>, <300, 300, 0> texture { pigment { spotted color_map { [ 0.000 color rgb<0.470, 0.350, 0.200> ] [ 0.800 color rgb<0.470, 0.350, 0.200> ] [ 1.000 color rgb<0.144, 0.298, 0.155> ] } scale <0.005, 0.005, 0.005> } normal { bumps 1.0000 turbulence 1.000 omega 2.000 lambda 0.500 scale 0.01 } finish { diffuse 0.440 ambient 0.130 specular 0.400 roughness 0.0100 } } translate <0.137745, 0.637072, 0> } #declare Sky = sky_sphere { pigment { gradient y color_map { [0.00 color rgb <0.2,0.2,1>] [0.90 color rgb <0.0,0.0,0.7>] } scale 2 translate <0, -5, 0> } pigment { bozo turbulence 0.6 octaves 7 omega .49876 lambda 2.5432 color_map { [0.0 color rgbf<1, 1, 1, 0.1>] [0.6 color rgbf<1, 1, 1, .8>] [0.8 color rgbf<1, 1, 1, 1>] } scale 6/10 scale <1, 0.3, 0.3> } pigment { bozo turbulence 0.6 octaves 8 omega .5123 lambda 2.56578 color_map { [0.0 color rgbf<1, 1, 1, 0.0>] [0.7 color rgbf<1, 1, 1, .9>] [0.9 color rgbf<1, 1, 1, 1>] } scale 6/10 scale <1, 0.3, 0.3> } } sky_sphere {Sky}