// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2010-03-04 15:44:01 by stolfi // ====================================================================== // CORES E TEXTURAS background{ color rgb < 1.0, 1.0, 1.0 > } #declare tx_plastico = texture{ pigment{ color rgb < 0.4, 0.4, 0.8 > } finish{ diffuse 0.5 reflection 0.25 ambient 0.1 specular 0.5 roughness 0.1 } } #declare tx_vidro = texture{ pigment{ color rgb < 0.85, 0.95, 1.00 > filter 0.70 } finish{ diffuse 0.03 reflection 0.25 ambient 0.02 specular 0.25 roughness 0.1 } } #declare tx_xadrez = texture{ pigment{ checker color rgb < 0.10, 0.42, 0.60 >, color rgb < 1.00, 0.97, 0.90 > } finish{ diffuse 0.9 ambient 0.1 } scale 2.0 } // ====================================================================== #include "eixos.inc" // Partes da cena: #macro obtexto(ss) text {ttf "verdana.ttf" ss 1, 0.0 texture {tx_xadrez} } #end #declare texto = "COCACOLA "; #macro letra_entrando(letra, pil, pfl, fase, etapa) #local posicao = (1-fase)*pil + fase*pfl; object { obtexto(letra) translate } #end #macro logotipo(texto, fase) #local n = strlen(texto); #local etapa = int(n*fase); #local frac = n*fase - etapa; #local e = etapa; #local pil = 2; #local pfl = 0; union { object { obtexto(substr(texto, 1, etapa)) } #if(mod(e,2)) object { letra_entrando(substr(texto, etapa+1, 1), pil, pfl, frac, etapa*0.7) } #else object { letra_entrando(substr(texto, etapa+1, 1), -2, pfl, frac, etapa*0.7) } #end } #end // CENA union { object { eixos(5) } object { logotipo(texto, clock) } //object { letra_entrando(substr(texto, etapa, 1), pil, pfl, fase); } #declare chao = box{ <-20,-20,-1>, <+20,+20,0> } #include "camlight.inc" #declare centro_cena = <3.00, 0.00, 5.00 >; #declare raio_cena = 5.0; #declare dir_camera = < 1.00, -3.00, 10.00 >; #declare dist_camera = 20.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)