#include "colors.inc"
#include "textures.inc"


background { color rgb <0.50, 0.50, 0.50> }

#declare posicao = <3, 4, 10>;
#declare alvo = < 0, 0, 0>;
#declare distancia = vlength(posicao - alvo);
#declare abertura = degrees(3/distancia);



//light_source {
//  posicao
//  color rgb <0.8, 1, 0.8>
//  spotlight
//  point_at alvo
//  radius 0.8*abertura falloff 1.2*abertura
//  fade_distance distancia 
//  fade_power 2
//}

light_source {
    <-5, -5, 3>
    color White
  } 

fog {
    distance 50
    color rgb<0.5, 0.5, 0.5>
}

camera {
  location  < 20.00, 20.00, 14.00 >  
  right     < -1.00, 0.00, 0.00 >
  up        <  0.00, 0.00, 0.90 >
  sky       <  0.00, 0.00, 1.00 >
  look_at   <  0.00, 3.00, 3.00 >
} 

plane { z, -10
    pigment {
      checker color Yellow color Green
      scale 20
    }
  }

#declare espessura1 = 2;
#declare espessura2 = 10;
#declare acinzentado = color rgb (1.0/espessura2)* <0.5, 0.5, 0.5>;
#declare amarelado = color rgb (1.0/espessura1)* <1, 1, 0>;
#declare avermelhado = color rgb (1.0/espessura1)* <1, 0, 0>;

//#declare caixa = 
//box {
//    <-10, -10, -10>,  
//    <30, 30, 30>   
//    hollow
//       pigment { color rgbt <1, 1, 1, 1> }
//       interior {
//          media{ scattering {1, color acinzentado } }
//       }  
//  }
//

#declare galinha = 
union {
  cylinder {
    <2, 1, -8>
    <2, 1, -4>
    0.5
       hollow
       pigment { color rgbt <1, 1, 1, 1> }
       interior {
          media{ emission color amarelado }
       }
   }
    cylinder {
      <2, 3, -8>
      <2, 3, -4>
       0.5
       hollow
       pigment { color rgbt <1, 1, 1, 1> }
       interior {
          media{ emission color amarelado }
       }
  }
  cylinder {
    <0, 0, -0.25>
    <0, 0, 0.25>
    1
    hollow
       pigment { color rgbt <1, 1, 1, 1> }
       interior {
          media{ emission color avermelhado }
       }
  rotate x*90
  translate <3, 2, 5.3>
  }   
  sphere {
    <3, 2, 4>
    1.5
     hollow
       pigment { color rgbt <1, 1, 1, 1> }
       interior {
          media{ emission color amarelado }
       }
  }
  cylinder {
    <3, 2, 0>,     
    <3, 2, 3>, 
    0.75                  
    hollow
       pigment { color rgbt <1, 1, 1, 1> }
       interior {
          media{ emission color amarelado }
       }
  }
  box {
    <0, 0, -4>,  
    <4, 4, 0>   
    hollow
       pigment { color rgbt <1, 1, 1, 1> }
       interior {
          media{ emission color avermelhado }
       }  
  }
}


//object {caixa}
object { galinha }