// Last edited on 2003-10-22 02:16:01 by stolfi // LAB-03 -- 04/Set/2003 global_settings { max_trace_level 10 } // ====================================================================== // CÂMERA #declare ctr = < 0.00, 0.00, 5.00 >; #declare camdir = < 96.00, -38.00, 15.00 >; camera { location ctr + 0.70*camdir // Posição do observador. right -1.00*x up 0.75*y 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 { 100 * < +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 { 100 * < +50.0, -10.0, +10.0 > // Posição da lâmpada. color rgb 0.8 * < 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; // ====================================================================== // CORES USADAS // ====================================================================== #declare bgcolor = texture { pigment { color rgb < 0.75, 0.80, 0.85 > } finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 } } #declare branco = texture { pigment { color rgb < 1.00, 1.00, 1.00 > } finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 } } #declare azul = texture { pigment { color rgb < 0.00, 0.00, 1.00 > } finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 } } #declare preto = texture { pigment { color rgb < 0.00, 0.00, 0.00 > } finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 } } #declare laranja = texture { pigment { checker color rgb < 1.00, 0.70, 0.00 >, color rgb < 1.00, 0.80, 0.20 > } finish { diffuse 0.9 specular 0.5 roughness 0.005 ambient 0.1 } } // ====================================================================== // Cristais e Espelhos // ====================================================================== #declare cor_cristal = < 0.20, 0.50, 0.90 >; #declare tx_cristal = texture { finish { ambient 0.1 diffuse 0.1 reflection 0.25 specular 1.0 roughness 0.001 } pigment { color cor_cristal filter 1 } } #declare cor_espelho = < 0.5, 0.5, 0.5 >; #declare tx_espelho = texture { pigment { rgb cor_espelho } finish { ambient 0.05 diffuse 0.05 reflection cor_espelho specular 0.20 roughness 0.05 } } // ====================================================================== // FORMAS USADAS // ====================================================================== #declare chao = plane { <0, 0, 1>, -10 texture {laranja} } #declare chao2 = plane { <0, 0, 1>, -10 texture {branco} } #declare chao3 = plane { <1, 1, 0>, -10 texture {branco} } #declare grande = sphere { <0.00, 0.00, 0.00>, 30.00 texture {branco} translate <0, 0, 4> } #declare pequena = sphere { <0.00, 20.00, -15.00>, 15.00 texture {branco} translate <0, 0, 4> } #declare haste_base = difference { object {pequena} object {grande} } #declare haste2 = difference { object {haste_base} object {chao2} } #declare haste = difference { object {haste2} object {chao3} rotate -90*y } #declare torre = cylinder { <0.00, 0.00, +0.00>, <0.00, 0.00, +35.0>, 5.0 texture {tx_cristal} } #declare toro = torus { 20, 5 texture {tx_espelho} rotate 90*x } // ====================================================================== // CENA! // ====================================================================== object {chao} object {haste translate <0,-5,0> rotate -45*z} object {haste translate <0,-5,0> rotate +45*z} object {haste translate <0,-5,0> rotate -135*z} object {haste translate <0,-5,0> rotate +135*z} object {torre translate <0,0,-10>} object {toro translate <0,0,-5>}