// Persistence Of Vision raytracer version 1.0 description file by the Raj.

#declare Cylinder_Y = quadric {
   <1.0 0.0 1.0>
   <0.0 0.0 0.0>
   <0.0 0.0 0.0>
   -1.0
}

#declare Disk_Y = intersection {       
   quadric { Cylinder_Y  }
   plane { <0.0 1.0 0.0> -1 inverse }
   plane { <0.0 1.0 0.0>  1 }
}

#declare Chrome = texture {
   ambient 0.3
   diffuse 0.7
   reflection 0.2
   brilliance 8.0
   specular 0.8
   roughness 0.1
   color red 1.0 green 0.8 blue 0.8 alpha 0.0
}


#declare UnitBox = box { <-1.0 -1.0 -1.0> <1.0 1.0 1.0> }

camera {
   location <0.0  13.0  -65.0>
   direction <0.0 0.0  2.0>
   up  <0.0  1.0  0.0>
   right <1.33333 0.0 0.0>
   look_at <0.0 15.0 0.0> 
}

object {
   sphere { <10.0  0.0  0.0>  20.0 }
   texture { 
      color red 1.0 green 1.0 blue 1.0 alpha 0.9
      ambient 0.1
      diffuse 0.1
      brilliance 2.2
      specular 0.9
      roughness 0.001
   }
}

object { 
   sphere { <0.0 0.0 0.0> 200.0 }
   texture {
      colour green 0.4 blue 1.0
      scale <30.0 10.0 10.0>
      ambient 0.2
      diffuse 0.75
   }
}

// Floor plane 
object {
box {UnitBox}
   texture {color green 0.8 blue 1.00 
ambient 0.7}
scale <50 1 50>
   translate <0.0 0.0 -10.0>  
}

object {
   light_source { <100.0  140.0  -130.0>
      colour red 1.0 green 1.0 blue 1.0
   }
}

object {
   light_source { <0.0  -20.0  0.0>
      colour red 0.2 green 1.0 blue 1.0
   }
}

object {
   light_source { <10.0  0.0  0.0>
      colour red 0.9 green 0.9 blue 0.0
   }
}

object {
   light_source { <0.0  20.0  0.0>
      colour red 1.0 green 1.0 blue 1.0
   }
}

object
{intersection {Disk_Y}
   texture {Chrome}
scale <11.5 6 11.5>
translate <10 0 0>
}
//first tower
object
{intersection {Disk_Y}
   texture {Chrome}
scale <4 15 4>
translate <11 0 2>
}

object
{intersection {Disk_Y}
   texture {Chrome}
scale <4 7 4>
translate <2 0 -8>
}

object
{intersection {Disk_Y}
   texture {Chrome}
scale <3 13 3>
translate <12 0 -10>
}

object
{intersection {Disk_Y}
   texture {Chrome}
scale <6 9 6>
translate <3 0 -2>
}

object
{intersection {Disk_Y}
   texture {Chrome}
scale <2 17 2>
translate <14 0 2>
}





