// Laboratório 2 de Computação Gráfica // Last edited on 2003-10-15 00:20:19 by stolfi // Luciano Ludka Cordeiro - ra992077 // ====================================================================== // CÂMERA #declare ctr = < 0.00, 0.00, 2.00 >; #declare camdir = < 21.00, 0.00, 8.00 >; camera { location ctr + 1.00*camdir // Posição do observador. right -0.60*x // Largura RELATIVA da imagem. up 0.80*y // Altura RELATIVA da imagem. sky z // Qual direção é "para cima"? look_at ctr // Para onde a câmera está apontando. } // Nota: os parâmetros "right" e "up" devem ter a mesma proporção // que os parâmetros ${WIDTH} e ${HEIGHT} no Makefile. // ====================================================================== // FONTES DE LUZ light_source { 10 * < +50.0, +30.0, +50.0 > // Posição da lâmpada. color rgb 1.2 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } light_source { 10 * < +50.0, -10.0, +10.0 > // Posição da lâmpada. color rgb 0.6 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } // ====================================================================== // DESCRIÇÃO DA CENA background{ color rgb < 0.75, 0.80, 0.85 > } #declare raio = 2.000; #declare vermelho = texture { pigment { color rgb <1.00, 0.00, 0.00> } finish { diffuse 0.8 specular 0.5 roughness 0.005 ambient 0.1 } } #declare prata = texture { pigment { color rgb < 0.92, 0.92, 0.92 > } } #declare prata_dois = texture{ pigment { color rgb < 0.80, 0.90, 1.00 > } } #declare chapeu = cone { <0.00, 0.00, 0.00>, 1.80 <0.00, 0.00, 0.75>, 1.00 texture { vermelho } translate <0.00, 0.00, 8.50> } #declare cabeca = sphere { < 0.00, 0.00, 0.00 >, 2.00 translate <0.00, 0.00, 7.00> texture { prata } } #declare corpo = cylinder { < 0.00, 0.00, 0.00 >, < 0.00, 0.00, 5.00 >, 2.00 scale<1.00, 1.50, 1.00> texture { prata } } #declare braco_esquerdo = cylinder { < 0.00, 0.00, 0.00 >, < 0.00, 5.00, 0.00 >, 1.00 rotate <-45.00, 0.00, 0.00> translate<0.00, 2.00, 4.50> texture { prata_dois } } #declare braco_direito = object { braco_esquerdo scale <1.00, -1.00, 1.00> } #declare perna_esquerda = cylinder { < 0.00, 0.00, 0.00 >, < 0.00, 0.00, -5.00 >, 1.00 translate <0.00, 1.20, 0.00> texture { prata_dois } } #declare perna_direita = object { perna_esquerda rotate <10, -10, 0> scale <1.00, -1.00, 1.00> } #declare robozinho = union{ object { cabeca } object { corpo } object { braco_esquerdo } object { braco_direito } object { perna_esquerda } object { perna_direita } } // Cena a ser visualizada union{ object { robozinho } object { chapeu } }