//========================================= // Angel wings for Pov-ray 3.1 & higher // (c) 1999 Gilles Tran tran@inapg.inra.fr //----------------------------------------- // These wings don't look good in close-up ! // Used in "Casualty of War". //----------------------------------------- #include "colors.inc" // Camera camera{ translate <0, 10, -120 > direction <0, 0, 4> up <0, 1, 0> right <1.33333, 0, 0> look_at <0 ,8, 0 > } #declare Lum=White; // Light light_source {< -1000, 1000, -1000> color Lum } light_source {< 1000, 1000, -1000> color Lum } background{Cyan} // creates a smooth blobby shape #declare StrengthVal = 1.0; // (+ or -) strength of component's radiating density #declare RadiusVal = 1.0; // (0 < RadiusVal) outer sphere of influence on other components #declare RightWing=blob{ threshold 0.3 sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <2,13,0.2> translate y*13 rotate z*-2 rotate y*1} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,12,0.2> translate y*12 rotate z*-10 rotate y*3} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,11,0.2> translate y*11 rotate z*-16 rotate y*5} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,10,0.2> translate y*10 rotate z*-22 rotate y*7} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,9,0.2> translate y*9 rotate z*-28 rotate y*9} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,8,0.2> translate y*8 rotate z*-34 rotate y*11} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,7,0.2> translate y*7 rotate z*-40 rotate y*13} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,6,0.2> translate y*6 rotate z*-46 rotate y*15} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*5 rotate z*-54 rotate y*17} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*5 rotate z*-60 rotate y*15} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*5 rotate z*-66 rotate y*14} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*5 rotate z*-72 rotate y*13} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*5 rotate z*-80 rotate y*12} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5.2,0.2> translate y*5 rotate z*-86 rotate y*11} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5.3,0.2> translate y*5 rotate z*-92 rotate y*10} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5.4,0.1> translate y*5 rotate z*-98 rotate y*9} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,4,0.2> translate y*4.1 rotate z*-105 translate x rotate y*8} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*4.2 rotate z*-110 translate x rotate y*7} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*4.3 rotate z*-115 translate x rotate y*6} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*4.5 rotate z*-120 translate x rotate y*5} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,5,0.2> translate y*5 rotate z*-125 translate x rotate y*4} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,6,0.2> translate y*6 rotate z*-130 translate x rotate y*3} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,7,0.2> translate y*6 rotate z*-135 translate x rotate y*2} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,8.5,0.2> translate y*6 rotate z*-140 translate x rotate y*1} sphere { <0, 0, 0>, StrengthVal, RadiusVal scale <1.5,8.5,0.2> translate y*6 rotate z*-145 translate x rotate y*0} sturm } #declare LeftWing=object{RightWing scale <1,1,-1>} #declare txtWing=texture{ pigment{White} normal{bumps 0.1 scale 0.5} finish{ambient 0.2 diffuse 0.8 specular 1 roughness 0.1} } #declare Wings= union{ object{LeftWing scale <1.5,1,1> translate y*12 rotate x*-40} object{RightWing scale <1.5,1,1> translate y*12 rotate x*40} translate y*-4 texture{txtWing} } object{Wings rotate y*45}