// Last edited on 2017-05-04 06:09:58 by stolfilocal // Processed by remove-cam-lights background{ color rgb < 0.75, 0.80, 0.85 > } #declare tx_plastico = texture{ pigment{ color rgb < 1.00, 0.00, 1.00 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare tx_fosca = texture{ pigment{ color rgb < 1.00, 0.80, 0.10 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_espelho = texture{ pigment{ color rgb < 1.00, 0.85, 0.30 > } finish{ diffuse 0.7 reflection 0.7*< 1.00, 0.85, 0.30 > ambient 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 1 } } #declare tx_xadrez = texture{ pigment{ checker color rgb < 0.10, 0.32, 0.30 >, color rgb < 0.50, 0.37, 0.10 > } finish{ diffuse 0.9 ambient 0.1 } scale 2.0 } #declare raio = 2.000; #declare corpo = cone{ < 0,0,0 >, 0.60, < 0.0, 0.0, 1.5 >, 0.2 } #declare cabeca = sphere{ < 0,0, 1.7 >, 0.5 } #declare pernas = box{< 0,0.2,0 >, < 0.25, 0.45, -1 >} #declare braco1 = cylinder{ < 0.0, 0.0, 1.0 >, < 0.0, 1.2, 0.5 >, 0.25 } #declare braco2 = cylinder{ < 0.0, 0.0, 1.0 >, < 0.0, -1.2, 0.5 >, 0.25 } #declare mao = sphere{ <0.0, 1.2, 0.5> , 0.25} #macro soldado ( posicaox, posicaoy, posicaoz, sargento) union{ object { corpo translate < posicaox, posicaoy , posicaoz > texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } object { cabeca translate < posicaox, posicaoy , posicaoz > texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } object { pernas translate < posicaox, posicaoy , posicaoz > texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } object { pernas translate<0 + posicaox, -0.4 + posicaoy , 0 + posicaoz> texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } object { braco1 translate < posicaox, posicaoy , posicaoz > texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } object { mao translate < posicaox, posicaoy , posicaoz > texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } object { braco2 translate < posicaox , posicaoy, posicaoz > texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } object { mao translate < 0.0 + posicaox, -2.4 + posicaoy, 0.0 + posicaoz > texture { pigment { color rgb < sargento, 0.70, 0.50 > } } } } #end #declare dd = 3.0; #macro pelotao (nsoldados) union{ #declare i = 0; #declare j = 0; #while (j < nsoldados) #while (i < nsoldados) #declare sarg = 0; #if (j = 0 & i = 0) #declare sarg = 1; #end #if (j = nsoldados - 1 & i = 0) #declare sarg = 1; #end #if (j = 0 & i = nsoldados - 1) #declare sarg = 1; #end #if (j = nsoldados - 1 & i = nsoldados - 1) #declare sarg = 1; #end #if (j = nsoldados/2 & i = nsoldados/2) #declare sarg = 1; #end object { soldado (dd*j, dd*i, 0, sarg) } #declare i = i + 1; #end #declare j = j + 1; #declare i = 0; #end } #end #include "eixos.inc" union{ // object{ eixos(3.00) } object { pelotao (11) } } #include "camlight.inc" #declare centro_cena = < 5*dd, 5*dd, 0.5 >; #declare raio_cena = 9.1*dd; #declare dir_camera = < 10.00, 3.00, 6.00 >; #declare dist_camera = 35*dd; #declare intens_luz = 1.50; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)