|
|
/*
Source for image posted in p.b.i - FurThing.jpg
Subject: Got one (29K) Was:Need a tribble?
Date: 17 March 2001 15:59
WARNING - watch for word-wrap in your newsreader.
Alf
http://www.peake42.freeserve.co.uk/
http://ourworld.compuserve.com/homepages/Alf_Peake/
alf### [at] peake42freeservecouk
Alf### [at] compuservecom
gw3### [at] thersgbnet
Celeron 500 + DOS + pov 3.1g, 300*225, no aa, Parse 22s, Trace 129s.
*/
#version 3.1;
global_settings { assumed_gamma 1 }
#include "colors.inc"
#declare Eye = <0, 4, -12>; #declare Target = <0, 0.75, 0>;
camera{ location (Eye) rotate y*60 angle 45 look_at Target }
light_source {<-100, 100, -100> color White*1.5 }
light_source {<0, 300, 100> color White }
background{ rgb 0.2 }
box{ <-5,-1,-5>, <5,-0.95,5>
pigment{ checker rgb 0.2, rgb 0.5 }
finish{ diffuse 0.8 ambient 0.1 }
}
#declare Hair = // cone{ 0, 0.04, x*1, 0.0
union{ triangle{ <0,0,-0.01>, <1.5,0,0>, <0,0,0.01> }
triangle{ <0,-0.01,0>, <1.5,0,0>, <0,0.01,0> }
}
#declare Rd=seed(2001);
// Tilt is hair angle wrt surface normal
#declare Tilt = 70; // 0 = upright, 90 = tangent to body.
#declare Radius = 4; // spherical body.
#declare Body =
union{
// sphere{ 0,Radius clipped_by{ plane{ -y,0 } } } // Optional to
// sphere{ 0,Radius scale <1, 0.35, 1> } // remove "see
through".
#declare Count = 30000; // Number of hairs, non-uniform density.
#while (Count > 0)
#declare Angle = rand(Rd) * 150 + 15; // Position of hair, 0=+X,
180=-X.
#declare AnglY = rand(Rd) * 180; // 0=+Z 90=+Y 180=-Z.
#declare AnglR = radians( Angle );
#declare Px = cos( AnglR ) * Radius;
#declare Pz = sin( AnglR ) * Radius;
object{ Hair rotate <0, Tilt-Angle, 0>
translate <Px, 0, Pz>
rotate -x * AnglY }
#declare Count = Count - 1;
#end
}
object{ Body pigment{ rgb <0.2,0.1,0.05> }
finish{ diffuse 0.8 }
scale <1,0.75,0.75>
}
#declare EyeBall =
union{ sphere{ 0,1 }
sphere{ 0, 0.85 translate -x*0.18 pigment{ Black } }
pigment{ crackle color_map{ [0.03 Red][0.03 White] } scale
0.3 }
finish{ phong 0.8 phong_size 60 }
scale 0.7
rotate <0,0,-15>
}
object{ EyeBall translate <-3.5,0.3, 0.6> }
object{ EyeBall translate <-3.5,0.3,-0.6> }
Post a reply to this message
|
|