// CityGen 1.5 + POV-Ray 3.7 test #declare WinAmbient = 0; #declare WinDiffuse = 0.25; #include "colors.inc" // #include "textures.inc" // #include "winsolid.inc" // #include "wintxt.inc" // #include "dskies.inc" // #include "skies.inc" // ---------------------------------------- // define camera camera { location <5, 20, -80> look_at <-30, 0, -55> // location <-15, 6, -90> look_at <-40, 0, -45> // location <-20, 20, -40> look_at <-45, 0, -60> // location <-15, 10, -55> look_at <-25, 0, -35> right x*image_width/image_height angle 50 } // ---------------------------------------- // define light sources #declare SunAngle = 110; light_source { <0, -925, 0> color rgb <1, 1, 1> rotate SunAngle*z } light_source { <-10, -925, 0> color rgb <1, 1, 1> rotate SunAngle*z } light_source { <10, -925, 0> color rgb <1, 1, 1> rotate SunAngle*z } // ---------------------------------------- // ground plane { <0, 1, 0>, 0 pigment { color rgb <0.4, 0.8, 0.2> } hollow } // ---------------------------------------- // define textures #declare Bricks1P = pigment { bozo pigment_map { [0.00 color red 0.5] [0.2 color red 0.55] [0.8 color red 0.45] [1.00 color red 0.5] } warp { repeat x*.2 offset <0,15*.125,0> } warp { repeat z*.2 offset <0,20*.125,0> } warp { repeat y*.125 offset <.2*7.5,0,.2*6.5> } translate z*(.2/2) } #declare Bricks1a = pigment { brick pigment { color rgb .6 }, pigment { Bricks1P } brick_size <.2,.125,.2> mortar .025 rotate <0, -45, 0> } #declare Bricks1b = pigment { brick pigment { color rgb .6 }, pigment { Bricks1P } brick_size <.2,.125,.2> mortar .025 rotate <0, 0, -90> } #declare Bricks5P = pigment { bozo pigment_map { [0.0 color rgb <0.40, 0, 0>] [0.2 color rgb <0.45, 0, 0>] [0.8 color rgb <0.35, 0, 0>] [1.0 color rgb <0.40, 0, 0>] } warp { repeat x*0.2 offset <0, 15*.125, 0> } warp { repeat z*0.2 offset <0, 20*.125, 0> } warp { repeat y*0.125 offset <0.2*7.5, 0, 0.2*6.5> } translate z*(0.2/2) } #declare Bricks5a = pigment { brick pigment { color rgb .5 }, pigment { Bricks5P } brick_size <0.2, 0.125, 0.2> mortar 0.025 rotate <0, -45, 0> } #declare Bricks5b = pigment { brick pigment { color rgb .5 }, pigment { Bricks5P } brick_size <0.2, 0.125, 0.2> mortar .025 rotate <0, 0, -90> } #declare UnderTxt = texture { pigment { bozo color_map { [0.0 color rgb <.9, .9, .75>] [0.6 color rgb <.9, .9, .75>] [0.8 color rgb 0] [1.0 color rgb 0] } scale 100 warp { repeat x offset <0,15,0> } warp { repeat z offset <0,20,0> } warp { repeat y offset <7,0,6> } } finish { ambient WinAmbient diffuse WinDiffuse #if (WinAmbient > .7) reflection 0 #else reflection 0.3 #end } } #declare WinTxt1 = texture { UnderTxt } texture { pigment { marble frequency 1.5 pigment_map { [0.0 Bricks1a] [0.5 Bricks1a] [0.5 color rgbt 1] [1.0 color rgbt 1] } rotate <0 45 0> } /* normal { marble frequency 1.5 normal_map { [0.0 BrickNormal1a] [0.5 BrickNormal1a] [0.5 WinNormal] [1.0 WinNormal] } rotate <0, 45, 0> } */ finish {ambient 0.4} } texture { pigment { marble pigment_map { [0.0 Bricks1b] [0.5 Bricks1b] [0.5 color rgbt 1] [1.0 color rgbt 1] } rotate <0 0 90> } /* normal { marble normal_map { [0.0 BrickNormal1b] [0.5 BrickNormal1b] [0.5 WinNormal] [1.0 WinNormal] } rotate <0 0 90> } */ finish {ambient 0.4} } #declare WinTxt5 = texture { UnderTxt } texture { pigment { marble frequency 1.5 pigment_map { [0.0 Bricks5a] [0.5 Bricks5a] [0.5 color rgbt 1] [1.0 color rgbt 1] } rotate <0 45 0> } finish {ambient 0.4} } texture { pigment { marble pigment_map { [0.0 Bricks5b] [0.5 Bricks5b] [0.5 color rgbt 1] [1.0 color rgbt 1] } rotate <0 0 90> } finish {ambient 0.4} } // ---------------------------------------- // Street /* Street Coordinates ( 16, 1) */ box { <-41, 0.005, -76>, <-29, 0, -64> pigment {color rgb <0.0, 0.0, 0>} } box { <-35.15, 0.01, -73>, <-34.85, 0, -70> pigment {color rgb <0.9, 0.8, 0>} } box { <-35.15, 0.01, -67>, <-34.85, 0, -64> pigment {color rgb <0.9, 0.8, 0>} } /* End Street */ /* Street Coordinates ( 19, 1) */ box { <-41, 0.005, -43>, <-29, 0, -31> pigment { color rgb <0.0, 0.0, 0> } } box { <-35.15, 0.01, -40>, <-34.85, 0, -37> pigment { color rgb <0.9, 0.8, 0> } } box { <-35.15, 0.01, -34>, <-34.85, 0, -31> pigment { color rgb <0.9, 0.8, 0> } } /* End Street */ /* Street Coordinates ( 31, 1) */ box { <-41, 0.005, -11>, <-29, 0, 1> pigment { color rgb <0.0, 0.0, 0> } } box { <-35.15, 0.01, -8>, <-34.85, 0, -5> pigment { color rgb <0.9, 0.8, 0> } } box { <-35.15, 0.01, -2>, <-34.85, 0, 1> pigment { color rgb <0.9, 0.8, 0> } } /* End Street */ /* Street Coordinates ( 39, 1) */ box { <-41, 0.005, 77>, <-29, 0, 89> pigment { color rgb <0.0, 0.0, 0> } } box { <-35.15, 0.01, 80>, <-34.85, 0, 83> pigment { color rgb <0.9, 0.8, 0> } } box { <-35.15, 0.01, 86>, <-34.85, 0, 89> pigment { color rgb <0.9, 0.8, 0> } } /* End Street */ /* Street Coordinates ( 45, 1) */ box { <-41, 0.005, 143>, <-29, 0, 155> pigment { color rgb <0.0, 0.0, 0> } } box { <-35.15, 0.01, 146>, <-34.85, 0, 149> pigment { color rgb <0.9, 0.8, 0> } } box { <-35.15, 0.01, 152>, <-34.85, 0, 155> pigment { color rgb <0.9, 0.8, 0> } } /* End Street */ // ---------------------------------------- // Building /**** Building Coordinates (16, 2) */ difference { box { <-29, 4, -75>, <-20, 0, -66> texture { WinTxt5 } } box { <-28.8, 5, -74.8>, <-20.2, 3.75, -66.2> texture { pigment{color rgb 0.4} } } } // end difference box { <-30, 0.1, -76>, <-18, 0, -64> pigment { brick color rgb 0.5, color rgb 0.8 brick_size <1, 1, 1> mortar 0.05 //rotate <0, 0, -90> } } /******* End Building *********/ /**** Building Coordinates (16, 2) fake */ /* union { box { <-29, 4, -75>, <-20, 0, -66> texture { pigment {color rgbt <0, 1, 1, 0.8> } } } box { <-28.8, 5, -74.8>, <-20.2, 3.75, -66.2> texture { pigment{ color rgbt <1, 0, 0, 0.8> } } } } box { <-30, 0.1, -76>, <-18, 0, -64> texture { pigment { color rgbt <0, 1, 0, 0.8> } } } */ /******* End Building *********/ /**** Building Coordinates (37, 2) */ #declare dz=-100; difference { box { <-29, 5, 61+dz>, <-20, 0, 65+dz> texture { WinTxt1 } } box { <-28.8, 6, 61.2+dz>, <-20.2, 4.75, 64.8+dz> texture { pigment{color rgb <.9 .9 .9>} } } } // end difference box { <-30, 0.1, 55+dz>, <-18, 0, 67+dz> pigment { brick color rgb .6, color rgb 0.8 brick_size <1, 1, 1> mortar .05 //rotate <0, 0, -90> } } /******* End Building *********/ /**** Building Coordinates (39, 2) */ #declare dx=-15; #declare dz=-135; difference { merge { box { <-25, 11, 78>, <-20, 0, 87> } box { <-29, 11, 78.001>, <-20.001, 0, 82> } texture { WinTxt5 } } // end union merge { box { <-24.8, 12, 78.2>, <-20.2, 10.75, 86.8> } box { <-28.8, 12, 78.2>, <-20.2, 10.7501, 82.2> } texture { pigment{color rgb <.9 .9 .9>} } } // end merge translate } // end difference box { <-30, 0.1, 77>, <-18, 0, 89> pigment { brick color rgb .6, color rgb 0.8 brick_size <1, 1, 1> mortar .05 //rotate <0, 0, -90> } translate } /******* End Building *********/