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, -5, 0.1> 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 <822.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 XStart=-3 // Starting position of patch #declare YStart=-3 // Starting position of patch #declare ZPos=0 // Z position #declare XEnd=3 // Ending position of patch #declare YEnd=3 // Ending position of patch #declare XStep=0.20 // X Step per clump of blades #declare XStepRand=0.5 // Proportion of randomness in X locations #declare YStep=0.20 // Y Step per clump of blades #declare YStepRand=0.5 // Proportion of randomness in Y locations #declare MeanBladeHeight=0.03 // Obvious! #declare HeightVar=0.5 // Proportion of randomness in blade height #declare MeanBladeWidth=0.005 // Obvious! #declare WidthVar=0.25 // Proportion of randomness in blade width #declare MinAngle=2 // Minimum angle from vertical at base of blade #declare MaxAngle=20 // Maximum angle from vertical at base of blade #declare MinCurve=35 // Minimum curvature of blade in degrees #declare MaxCurve=70 // Maximum curvature of blade in degrees #declare MaxBladeSegs=8 // Maximum number of segments in each blade (there are twice this number of triangles in each blade) #declare MinBladeSegs=4 // Minimum number of segments in each blade #declare MaxBlades=8 // Maximum number of grass blades in each clump #declare MinBlades=2 // Minimum number of grass blades in each clump #declare NumTri = 0 // Needed!!! #declare R1=seed(276) // Random seed used by Reeds.inc #declare GrassPatch1 = #include "Reed Plugin.inc" #declare PatchCount = 0 #while (PatchCount < 900) #declare XOff = (rand(R1)-0.5)*4 #declare YOff = (rand(R1)-0.5)*4 object{ GrassPatch1 rotate <0,0,int(rand(R1)*4)*90> translate } #declare PatchCount = PatchCount + 1 #end // Ground plane 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.1> }