#include "colors.inc" // ====================================================================== // CÂMERA camera { location <0.0, 0.5, -200.0> right -1.0*x // Largura RELATIVA da imagem. up 0.75*y // Altura RELATIVA da imagem. direction 1.5*z look_at <0, 0, 0> rotate -30*y } // 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 { <0, 0, 0> color rgb <1, 1, 1> translate <30, 20, -50> //rotate -30*y } //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. //rotate 90*x //} //light_source { //10 * < +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 #declare fonte=seed(314159); sky_sphere { pigment { gradient y color_map { [0.0 rgb <0.6,0.7,1.0>] [0.7 rgb <0.0,0.1,0.8>] } } } plane { y, -1 pigment { color rgb <0.7,0.5,0.3> } } #declare tx_espelho = texture{ pigment {Gray70} finish{ ambient 0.05 diffuse 0.05 reflection{ Silver metallic } specular 0.20 roughness 0.05 } } #declare tx_pedras = texture{ finish { ambient 0.1 diffuse 0.1 reflection 0.25 specular 1 roughness 0.001 } pigment {color rgb <0, 1, 1>} } #declare porta = box{ <-10,0,-32.5> <10,8,-32.501> //pigment {Gray70} texture {tx_espelho} //translate <20,0,0> } #declare predio = box{ <-32.5,0,-32.5> <32.5, 40, 32.5> pigment {Yellow} } #declare andar_um = union { #declare i = 0; #while (i<9) cylinder{ 0, <0,0,-0.001> 2.5 #declare j = 1*rand(fonte); #if (j < 0.5) texture{tx_pedras} #else pigment{Red} #end translate -32.5*z+12.5*y+(7*i-27.5)*x } #declare i =i +1; #end } #declare andar_dois = union{ #declare i = 0; #while (i<5) #declare raio = 2.5; box { #declare alt= 4 + 3*rand(fonte); <0,0,0> <10, alt, -0.001> pigment {Magenta} translate <11*i-27.5, 20, -32.5> } #declare i =i +1; #end } #declare andar_tres = union { #declare i = 0; #while (i<9) cylinder{ 0, <0,0,-0.001> 2.5 #declare j = 1*rand(fonte); #if (j < 0.5) pigment{Green} #else pigment{White} #end translate -32.5*z+32.5*y+(7*i-27.5)*x } #declare i =i +1; #end } union{ object{predio} object{porta} object {andar_um} object {andar_dois} object { andar_tres } object { andar_tres rotate -90*y } object { andar_um rotate -90*y } object { andar_dois rotate -90*y } object { andar_tres rotate 90*y } object { andar_um rotate 90*y } object { andar_dois rotate 90*y } object { andar_tres rotate 180*y } object { andar_um rotate 180*y } object { andar_dois rotate 180*y } }