//Andrew Slagle- 29Nov05 #include "colors.inc" #include "golds.inc" #include "metals.inc" #include "woods.inc" #include "transforms.inc" #include "shapes.inc" #include "math.inc" #include "glass.inc" #include "stones.inc" #include "textures.inc" #include "stars.inc" // perspective (default) camera camera { location <0.0, 2.0, -15.0> look_at <0.0, 0.0, 0.0> right x*image_width/image_height } // create a regular point light source light_source { 0*x // light's position (translated below) color rgb <1,1,1> // light's color translate <-20, 40, -20> } difference{ // create a sphere shape sphere { <0, 1, 0> // center of sphere 0.5 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling pigment {MediumSlateBlue} } // create a box that extends between the 2 specified points box { <-1, -1, -1> // one corner position < 1, 1, 1> // other corner position pigment {MediumSlateBlue} } } difference{ torus { 2, .2 translate<0,1,0> pigment {MediumSlateBlue} rotate 45*x } // create a box that extends between the 2 specified points box { <1, 0, -1> // one corner position < 3, 4, 1> // other corner position pigment {MediumSlateBlue} } } // create a sphere shape sphere { <0,.9, 0> // center of sphere .3 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling pigment {MediumTurquoise} } // create a point "spotlight" (conical directed) light source light_source { 0*x // light's position (translated below) color rgb <1,1,1> // light's color spotlight // this kind of light source translate <40, -80, -40> // position of light point_at <0, .9, 0> // direction of spotlight radius 5 // hotspot (inner, in degrees) tightness 50 // tightness of falloff (1...100) lower is softer, higher is tighter falloff 8 // intensity falloff radius (outer, in degrees) } cylinder { 0*x, 2*x, .1 // open pigment {MediumSlateBlue} translate <-1.8,1.35,0> } // create a point "spotlight" (conical directed) light source light_source { 0*x // light's position (translated below) color rgb <1,1,1> // light's color spotlight // this kind of light source translate <40, 80, -40> // position of light point_at <0, 0, 0> // direction of spotlight radius 5 // hotspot (inner, in degrees) tightness 50 // tightness of falloff (1...100) lower is softer, higher is tighter falloff 8 // intensity falloff radius (outer, in degrees) } sphere { <5, 0, 4.2> // center of sphere .5 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling texture {Lightning1} } cone { 1*y, 0.0, -1*y, 0.1 // open translate <5, 3, 3> rotate 45*x texture {Lightning2} } // create a sphere shape sphere { <-3, 4, 3> // center of sphere 1 // radius of sphere // scale <5,2,1> // <= Note: Spheres can become ellipses by uneven scaling texture {Water} } // create a point "spotlight" (conical directed) light source light_source { 0*x // light's position (translated below) color rgb <1,1,1> // light's color spotlight // this kind of light source translate <40, 80, -40> // position of light point_at <-3, 4, 3> // direction of spotlight radius 5 // hotspot (inner, in degrees) tightness 50 // tightness of falloff (1...100) lower is softer, higher is tighter falloff 8 // intensity falloff radius (outer, in degrees) } // create a point "spotlight" (conical directed) light source light_source { 0*x // light's position (translated below) color rgb <1,1,1> // light's color spotlight // this kind of light source translate <4, -80, 40> // position of light point_at <-3, 4, 3> // direction of spotlight radius 5 // hotspot (inner, in degrees) tightness 50 // tightness of falloff (1...100) lower is softer, higher is tighter falloff 8 // intensity falloff radius (outer, in degrees) } // create a sphere shape sphere { <-6, 1, .1> // center of sphere .8 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling texture {F_Glass6} } // create a smooth blobby shape #declare RadiusVal = 1.0; // (0 < RadiusVal) outer sphere of influence on other components #declare StrengthVal = 1.0; // (+ or -) strength of component's radiating density blob { // threshold (0.0 < threshold <= StrengthVal) surface falloff threshold # threshold 0.6 sphere { < 1, 0, 0>, RadiusVal, StrengthVal } sphere { <3, 0.65, 0>, RadiusVal, StrengthVal } sphere { <-1, 0, 0>, RadiusVal, StrengthVal } cylinder { -z, +z, RadiusVal, StrengthVal } // [sturm] scale 2 translate <-5,-5,5> texture {F_MetalE} pigment {Turquoise} } // Create an infinite sphere around scene and allow any pigment on it sky_sphere { pigment {bozo turbulence 0.65 octaves 6 omega 0.7 lambda 2 color_map { [0.0, 0.1 color red 0.85 green 0.85 blue 0.85 color red 0.75 green 0.75 blue 0.75] [0.1, 0.5 color red 0.75 green 0.75 blue 0.75 color Clear] [0.5, 1.001 color Clear color Clear]}}} // create a smooth blobby shape #declare RadiusVal = 1.0; // (0 < RadiusVal) outer sphere of influence on other components #declare StrengthVal = 1.0; // (+ or -) strength of component's radiating density blob { // threshold (0.0 < threshold <= StrengthVal) surface falloff threshold # threshold 0.6 sphere { < 1.1, 1, 0>, RadiusVal, StrengthVal } sphere { <-1, 1, 0>, RadiusVal, StrengthVal } sphere { <-1, 1, 0>, RadiusVal, StrengthVal } cylinder { -z, +z, RadiusVal, StrengthVal } // [sturm] scale 2 translate <4,4,3> texture {T_Brass_5E} } difference{ // 3D curved FINITE (no CSG) surface created from a mesh of triangles bicubic_patch { type 1 // patch_type (0..1) // 0 = Bezier patch, just store the triangular vertices // 1 = Bezier patch, store all plane equations defined by // the triangulation of the patch into sub patches // (faster, uses more memory) flatness 0.1 // flatness value // flatness_value = 0.0 to 1.0, with higher values // giving flatter, less smooth results u_steps 3 // # of triangles to subdivide (1-5) v_steps 3 // # of triangles to subdivide (1-5) <0, 0, 2> <1, 0, 0> <2, 0, 0> <3, 0, -2> <0, 1, 0> <1, 1, 0> <2, 1, 0> <3, 1, 0> <0, 2, 0> <1, 2, 0> <2, 2, 0> <3, 2, 0> <0, 3, 2> <1, 3, 0> <2, 3, 0> <3, 3, -2> translate <3,-6,0> pigment {Yellow} } // create a sphere shape sphere { <0, 1, 0> // center of sphere .6 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling pigment {Red} translate <5,-4,0> } // create a sphere shape sphere { <5, -5, 0> // center of sphere .5 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling pigment {Red} } // create a sphere shape sphere { <4, -4, 0> // center of sphere 0.5 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling } // create a sphere shape sphere { <3, -3, 0> // center of sphere 1 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling } // create a sphere shape sphere { <2.6, -5, 0> // center of sphere 1 // radius of sphere // scale <1,2,1> // <= Note: Spheres can become ellipses by uneven scaling } } // create a TrueType text shape text { ttf // font type (only TrueType format for now) "crystal.ttf", // Microsoft Windows-format TrueType font file name "Galaxy", // the string to create -1, // the extrusion depth -1 // inter-character spacing translate <-6,-1,0> pigment {CoolCopper} } // create a point "spotlight" (conical directed) light source light_source { 0*x // light's position (translated below) color rgb <1,1,1> // light's color spotlight // this kind of light source translate <40, 80, -40> // position of light point_at <-1, -1, 1> // direction of spotlight radius 5 // hotspot (inner, in degrees) tightness 50 // tightness of falloff (1...100) lower is softer, higher is tighter falloff 8 // intensity falloff radius (outer, in degrees) } plane { z, 5 texture {Starfield1} scale <5,5,1>} #macro Glow(Color) media { emission 1 density { spherical poly_wave 5 density_map { [0 rgb 0] [2 rgb Color] translate <-6,1,.1> } } method 3 } #end // Capped Cylinder, closed [or open ended] // cylinder { , , RADIUS [open] } // END1 = coord of one end of cylinder // END2 = coord of other end // RADIUS = size of cylinder // open = if present, cylinder is hollow, else capped cylinder { <6,3/2,0>, <6,-3/2,0>, .5 pigment {CoolCopper} } // clipped conical shape // cone { , RADIUS1, , RADIUS2 [open] } // Where and are vectors defining the x,y,z // coordinates of the center of each end of the cone // and RADIUS1 and RADIUS2 are float values for the radii // of those ends. open, if present, cone is hollow, else capped cone { <6,7/2,0>, 0.0, <6,3/2,0>, .5 pigment {CoolCopper} } // rounded-surface FINITE (no CSG) triangle shape // triangular FINITE (no CSG) shape (vertices are endpoints) triangle { <5, -3/2, 0>, // <7, -3/2, 0>, // < 6, 1, 0> // pigment {Red} } triangle { <6, -3/2, 1>, // <6, -3/2, -1>, // < 6, 1, 0> // pigment {Red} } // create a TrueType text shape text { ttf // font type (only TrueType format for now) "crystal.ttf", // Microsoft Windows-format TrueType font file name "U", // the string to create 0, // the extrusion depth 0 // inter-character spacing translate <9,2.5,-8> pigment {Red} scale <.5,.5,.5> } text { ttf // font type (only TrueType format for now) "crystal.ttf", // Microsoft Windows-format TrueType font file name "S", // the string to create 0, // the extrusion depth 0 // inter-character spacing translate <9,1.5,-8> pigment {White} scale <.5,.5,.5> } text { ttf // font type (only TrueType format for now) "crystal.ttf", // Microsoft Windows-format TrueType font file name "A", // the string to create 0, // the extrusion depth 0 // inter-character spacing translate <9,.5,-8> pigment {Blue} scale <.5,.5,.5> }