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.