// Last edited on 2003-11-27 01:30:57 by stolfi
// Lab. 4 - Romeu Ribeiro M. da Fonseca RA: 993236

#include "colors.inc"

background { color Black }

// ======================================================================

#declare ctr = < 0.00, 0.00, 10.00 >;
#declare camDir = < +70.00, +400.00, 60.00 >;

camera {
  location   ctr + 1.00*camDir
  right      -1.33*x
  up         1.00*y
  sky        z
  look_at    ctr
}
 

// ======================================================================
// FONTE DE LUZ

light_source { <80, 400, 70> color White}

// ======================================================================
// DESCRIÇÃO DA CENA 

#declare tinta_Azul = 
  texture {
    pigment { color rgb < 0, 0, 1.00 > }
    finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 }
  }

#declare tinta_Vermelha = 
  texture {
    pigment { color rgb < 1.00, 0, 0 > }
    finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 }
  }

#declare tinta_Verde = 
  texture {
    pigment { color rgb < 0, 1.00, 0 > }
    finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 }
  }

#declare tinta_Amarela = 
  texture {
    pigment { color rgb < 1.00, 1.00, 0.00 > }
    //finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 }
  }

#declare cor_cristal = <0.50, 1.00, 0.50>;  

#declare tx_cristal = 
  texture {
    finish {
      ambient 0.1 diffuse 0.1
      reflection 0.25
      specular 1 roughness 0.001
    }
    pigment { color cor_cristal filter 1 }
  }

#declare cor_espelho = < 0.00, 0.00, 1.00>;

#declare tx_espelho =   
  texture {
    pigment { rgb cor_espelho }  
    finish {
      ambient 0.05 diffuse 0.05
      reflection cor_espelho
      specular 0.20 roughness 0.05
    }
  }
  
#declare Formulaone =
 text {
   ttf "arial.ttf"
   "F1"
   0.2, 0
   texture {
     tinta_Vermelha
   }
   scale <50,50,50>
 }

#declare Formulazero = 
  text {
    ttf "comic.ttf"
    "F0"
    0.25, 0
    texture {
     tinta_Amarela
    }
   scale <50,50,50>
 }

// Descrição da animação

#if (clock <= 0.25)
 object { Formulaone translate <12, 12, 0>  scale <0.5, 0.5, 0.5> rotate<0, 180, 0> }
#else
 #if (clock < 0.75)
	union {
	   object { Formulaone translate <8, 8, 0>  scale < 1, 1, 1> rotate<90, 180, 0> }
	   object { Formulazero translate <-100,80,15> scale<0.75, 0.75, 0.75>  rotate<270, 180, 0> }
	}
 #else
   #if (clock < 0.9)
	union {
		object { Formulaone translate <4, 4, 0> scale <1.5, 1.5, 1.5> rotate<270, 180, 0> }
		object { Formulazero translate <-100,80,15> scale<1, 1, 1>  rotate<270, 180, 0> }
	}
   #else
	union {
   		object { Formulaone translate <0,0,0> scale<2, 0.2, 2> rotate<0, 180, 0> }
		object { Formulazero translate <0,0,0> scale<2, 2, 2>  rotate<270, 180, 0> }
	}
   #end
  #end
#end