// Simple UFO shape
// John Kalstrom, Sep 93
// Oct 94 note: "figure inside" was never debugged, and I don't think
// the sea bottom does anything (I didn't even know what a texture
// map was back then)
#include "shapes.inc"
#include "colors.inc"
#include "textures.inc"

// UFO
union {
  // Bubble-glass on top
  object {
    sphere { <0 1 0> 5 }
    texture {
      Glass
      pigment { quick_color Grey }
    }
  }

  // Main body
  object {
    intersection {
      sphere { <0 46 0> 50 }
      sphere { <0, -48 0> 50 }
    }
    texture {
      Silver1
      pigment { quick_color Pink }
    }
  }

//  // Figure inside!
//  object {
//    intersection {
//      sphere { <0 1 0> 5 }
//      quadric { Cylinder_Z scale <3 1 3> }
//    }
//    texture {
//      image_map {
//        <1 -1 0> gif "gwar.gif" once interpolate 2
//        alpha all 0.7
//      }
//      translate <-0.5 0 0>
//      scale <2 2 1>
//      ambient 1
//    }
//  }
  bounded_by { sphere { <0 0 0> 20 }}
  scale <2 2 2>
}

// Water
union {
  // Surface; partially transparent
  object {
    plane { <0 1 0> 0 }
    texture {
      Water
      pigment { quick_color Green }
    }
    scale <500 500 500>
  }
  // Sea bottom
  object {
    plane { <0 1 0>, -10 }
    texture {
      pigment { color Aquamarine }
      finish { diffuse 0.8 }
    }
  }
  translate <0, -100 0>
}

// Sky
object {
  sphere { <0 0 0> 1500 inverse }
  texture {
    Blue_Sky
    scale <400 50 200>
    pigment { quick_color Blue }
  }
}

object { light_source { <0.0, -30.0 0.0> color White } }

// Sun
object {
  light_source { <150.0 1000.0 1000.0> color White }
 }

camera {
   location < 0.0 20.0 200.0 >
   direction <0.0 0.0, -1.5>
   up  <0 1 0>
   right <1.333 0 0>
   look_at <0 0 0>
 }