#include "textures.inc" background { color rgb <0, 0, 0> } light_source { < 150, 1000, 1000 > color rgb < 1.0, 1.0, 1.0 > } camera { location <10,30,15> sky <0,0,1> look_at < 0,0,0> } plane{ z, 0 texture{ Ruby_Glass } } plane{ y, -60 rotate x*(-30) texture{ Starfield scale 26 } } #declare espessura = 2.5; #declare amarelado = color rgb (1/espessura)*<1,1,0>; #declare corpo = sphere{ <0,0,4>, 5 scale<2.3,.9,1> } #declare asa_esquerda = union{ sphere{ <0,3.7,6.5>, 1.7 scale<4,.8,1> rotate<0,-5,0> } sphere{ <0,3.7,4>, .8 scale<4,1,1> } rotate<0,20,0> } #declare asa_direita = object{ asa_esquerda scale<0,-1,0> } #declare asas = union{ object{asa_esquerda} object{asa_direita} } #declare pescoco = cylinder{<-7.6,0,5.5>, <-8,0,10>, 1 } #declare perna_direita = cylinder{<-2,-1.7,-3>, <-1.8,-1.5,4.3>, .5 } #declare perna_esquerda = cylinder{<4,1.7,-1.2>, <1.2,1.5,4.2>, .5 } #declare pernas = union{ object{perna_esquerda} object{perna_direita} } #declare pe_direito = cylinder{<-2,-1.7,-3>, <-3.2,-1.7,.15>, .35 } #declare pe_esquerdo = cylinder{<4,1.7,-1.2>, <3.2,1.7,.7>, .35 } #declare pes = union{ object{pe_esquerdo} object{pe_direito} } #declare olho_direito = sphere{ <-8,.8,9>,.25 } #declare olho_esquerdo = object{ olho_direito scale<1,-1,1> } #declare olhos = union{ object{olho_direito} object{olho_esquerdo} } #declare cabeca = cone{ <-10,0,8>,0 <-7.7,0,11>,2 } #declare quasimoda = union{ object{corpo} object{pescoco} object{pernas} object{pes} object{asas} object{cabeca} } object {quasimoda translate<0,0,0> hollow pigment{ color rgbt <1,1,1,.8> } interior{ media{ scattering { 1, color amarelado } } } } #declare posicao = <50,100,100>; #declare alvo = <0,0,0>; #declare distancia = vlength(posicao-alvo); #declare raio = 35; #declare abertura = degrees(raio/distancia); light_source { posicao color rgb <.8,1,.8> spotlight point_at alvo radius .8*abertura falloff 1.2*abertura fade_distance distancia fade_power 2 }