#include "colors.inc" global_settings { ambient_light color rgb <0, 0, 0> } #declare CameraZPos=-60; camera { perspective location <0, 25, CameraZPos> up y right 4/3*x look_at <0.0, 3.0, 40.0> } #declare HorizonSkyColor=SkyBlue*0.8; // fog to hide clouds in horizon fog{ distance 100 color rgbf HorizonSkyColor*<1,1,1, 0.001> fog_type 2 fog_offset -5 fog_alt 5 } sky_sphere{ pigment{ gradient y color_map{ [0.002 0.200 color SkyBlue color HorizonSkyColor] } scale 2 translate -0.3*y } pigment { bozo turbulence 0.85 octaves 6 omega 0.7 lambda 2.5 color_map { [0.0 0.2 color rgb <0.88, 0.880, 0.880>*1.2 color rgb <0.75, 0.75, 0.75>*1.2] [0.2 0.5 color rgb <0.75, 0.75, 0.75>*1.2 color rgbt <1, 1, 1, 1>] [0.5 1.0 color rgbt <1, 1, 1, 1> color rgbt <1, 1, 1, 1>] } scale <0.8, 0.1, 0.2> } } // default light light_source { <100, 150, -40> color rgb <1,1,1> } #declare GlobeSize=10000; //Ground Sphere sphere { <0,0,0>, GlobeSize texture{ normal{ bumps 0.8 } pigment{ crackle color_map{ [0 rgb<0.4,0.3,0.3>] [0.5 rgb<0.1,0.1,0.1>] [0.5 rgb<0.1,0.1,0.1>] [1 rgb<0.0,0.0,0.0>] } } } translate <0,-GlobeSize,0> } #declare Object1Texture = texture { pigment { color rgb <0.509804, 0.784314, 0.0784314> } finish { ambient 1 diffuse 1 phong 0.2 phong_size 80 } } #declare Object2Texture = texture { pigment { color rgb <0.196078, 0.54902, 0.196078> } finish { ambient 1 diffuse 1 phong 0.2 phong_size 80 } } #declare Object3Texture = texture { pigment { color rgb <0.0588235, 0.313725, 0.0588235> } finish { ambient 1 diffuse 1 phong 0.2 phong_size 80 } } #declare OneGrass=union{ mesh { smooth_triangle { <-0.244469, -1.77636e-015, -0.00117544>, <0, 0.164294, -0.986411>, <0.255531, -1.77636e-015, -0.00117544>, <0, 0.157498, -0.987519>, <-0.273442, 3.57428, 1.18806>, <-0.0650445, 0.456045, -0.887577> } smooth_triangle { <-0.273442, 3.57428, 1.18806>, <-0.0650445, 0.456045, -0.887577>, <0.100406, 3.5926, 1.17005>, <-0.0649464, 0.447837, -0.891753>, <-0.295525, 6.63443, 3.37064>, <-0.34598, 0.642625, -0.683616> } smooth_triangle { <-0.295525, 6.63443, 3.37064>, <-0.34598, 0.642625, -0.683616>, <-0.114707, 9.11839, 5.78143>, <-0.883346, 0.353335, -0.307983>, <-0.229207, 9.08691, 6.12571>, <-0.895051, 0.368419, -0.2513> } smooth_triangle { <-0.229207, 9.08691, 6.12571>, <-0.895051, 0.368419, -0.2513>, <-0.114707, 9.11839, 5.78143>, <-0.883346, 0.353335, -0.307983>, <0.00553144, 11.3652, 8.41045>, <-0.988288, 0.149562, -0.0303073> } smooth_triangle { <-0.114707, 9.11839, 5.78143>, <-0.883346, 0.353335, -0.307983>, <-0.295525, 6.63443, 3.37064>, <-0.34598, 0.642625, -0.683616>, <-0.0477422, 6.6952, 3.30237>, <-0.346044, 0.611141, -0.711871> } smooth_triangle { <-0.0477422, 6.6952, 3.30237>, <-0.346044, 0.611141, -0.711871>, <-0.295525, 6.63443, 3.37064>, <-0.34598, 0.642625, -0.683616>, <0.100406, 3.5926, 1.17005>, <-0.0649464, 0.447837, -0.891753> } smooth_triangle { <0.100406, 3.5926, 1.17005>, <-0.0649464, 0.447837, -0.891753>, <-0.273442, 3.57428, 1.18806>, <-0.0650445, 0.456045, -0.887577>, <0.255531, -1.77636e-015, -0.00117544>, <0, 0.157498, -0.987519> } hierarchy off texture { Object1Texture } } mesh { smooth_triangle { <-0.25, -8.72044e-009, -1.32153e-009>, <0, 0.0951522, -0.995463>, <0.124999, 7.18293, 2.08592>, <0, 0.452158, -0.891938>, <-0.124999, 7.18293, 2.08592>, <0, 0.452158, -0.891938> } smooth_triangle { <-0.124999, 7.18293, 2.08592>, <0, 0.452158, -0.891938>, <0.124999, 7.18293, 2.08592>, <0, 0.452158, -0.891938>, <0, 13.1113, 6.6466>, <0, 0.746683, -0.66518> } smooth_triangle { <0.124999, 7.18293, 2.08592>, <0, 0.452158, -0.891938>, <-0.25, -8.72044e-009, -1.32153e-009>, <0, 0.0951522, -0.995463>, <0.25, -8.72044e-009, -1.32153e-009>, <0, 0.0951522, -0.995463> } hierarchy off texture { Object2Texture } } mesh { smooth_triangle { <-0.250577, -2.75093e-008, 0.00206143>, <0, 0.0582592, -0.998301>, <0.124423, 7.39485, 1.24919>, <0, 0.251824, -0.967773>, <-0.125577, 7.39485, 1.24919>, <2.34012e-017, 0.251824, -0.967773> } smooth_triangle { <-0.125577, 7.39485, 1.24919>, <2.34012e-017, 0.251824, -0.967773>, <0.124423, 7.39485, 1.24919>, <0, 0.251824, -0.967773>, <-0.000577087, 14.6905, 2.62176>, <0, -0.0448286, -0.998995> } smooth_triangle { <0.124423, 7.39485, 1.24919>, <0, 0.251824, -0.967773>, <-0.250577, -2.75093e-008, 0.00206143>, <0, 0.0582592, -0.998301>, <0.249423, -2.75093e-008, 0.00206143>, <0, 0.0582592, -0.998301> } hierarchy off texture { Object3Texture } } } #declare NumOfLeafs=30000; #declare CurNum=0; #declare PosSeed=seed(1999); #while (CurNum translate <(rand(PosSeed)-0.5)*400,0,rand(PosSeed)*(300-CameraZPos)+CameraZPos> } #declare CurNum=CurNum+1; #end