I decided to get a little fancy with the logo and came up with the image in Figure 23-6 . I changed only the coloring and texture for each of the objects. I also added the front and back structures to complete the look. Here's the code to get you thinking about it.
  
 
// Persistence-of-Vision Ray-Tracer Scene Description File
// File: 3d_logo_2.pov
// Auth: Steve Murphy
// ==== Standard POV-Ray Includes ====
#include "colors.inc" // Standard Color definitions
#include "glass.inc" // Glass finishes and textures
#include "textures.inc"
 background { color White }   // camera { location <0, 20, 0> look_at <0, 0, 0> } // top   // camera { location <0, 0, -30> look_at <0, 0, 0> } // front   // camera { location <-20, 0, 0> look_at <0, 0, 0> } // left   camera { location <15, 15, -30> look_at <0, 0, 0> } // perspective   light_source { <0, 0, -40> color White }   light_source { <40, 0, 0> color White }   light_source { <-40, 0, 0> color White }   light_source { <0, 40, 0> color White }   light_source { <0, -40, 0> color White }  // larger box in the center
 box {  <-3, -3, -3>, <3, 3, 3>
 texture { Starfield }  }
// make a smaller box object
 #declare myBox = box {  <-2, -2, -2>, <2, 2, 2>
 texture { T_Ruby_Glass }  }
 object { myBox translate <-4, 4, -4> } // tlf   object { myBox translate <-4, -4, -4> } // blf   object { myBox translate <-4, 4, 4> } // tlb   object { myBox translate <-4, -4, 4> } // blb   object { myBox translate <4, 4, -4> } // trf   object { myBox translate <4, -4, -4> } // brf   object { myBox translate <4, 4, 4> } // trb    object { myBox translate <4, -4, 4> } // brb         // make a cone object     #declare myCone = cone {     <0, -3, 0>, 4     <0, 2, 0>, 1     texture { Chrome_Texture }     }         object { myCone translate <0, 9, 0> } // top     object { myCone rotate <180, 0, 0> translate <0, -9, 0> } // bottom     object { myCone rotate <0, 0, 90> translate <-9, 0, 0> } // left     object { myCone rotate <0, 0, -90> translate <9, 0, 0> } // right     object { myCone rotate <-90, 0, 0> translate <0, 0, -9> } // front     object { myCone rotate <90, 0, 0> translate <0, 0, 9> } // back         // make a sphere object     #declare mySphere = sphere {     <0, 0, 0>, 2     texture { Lightening1 }     }         object { mySphere rotate <5, 6, 7> translate <0, 12, 0> } // top     object { mySphere rotate <10, -8, 20> translate <12, 0, 0> } // right     object { mySphere rotate <-19, 17, 22> translate <0, -12, 0> } // bottom     object { mySphere rotate <-29, 87, -87> translate <-12, 0, 0> } // left     object { mySphere rotate <12, 18, -91> translate <0, 0, -12> } // front     object { mySphere rotate <-19, -16, -14> translate <0, 0, 12> } // back   So that's it for the 3D logo. Your introduction to 3D art is not complete by any means. There's a whole lot more to PovRay, and it's worth exploring on your own. PovRay isn't the only avenue for you to explore either. These days there are many new tools available to you.
