//lightsaber //Kurt Bangert (http://www.travelnotes.de) global_settings { max_trace_level 50 } #include "colors.inc" #include "textures.inc" camera {location <0,5,-60> look_at <0,5,0>} light_source { <10, 50, -40> color rgb <1,1,1> } //media statements #declare outer_blue_light= media {emission <.01,.01,.05>} #declare inner_blue_light= media {emission <.4,.4,1>} #declare outer_pink_light= media {emission <.07,.01,.07> } #declare inner_pink_light= media {emission <.7,.3,.7>} //the blade of the light saber - a cone with two ellipsoids #declare blade= merge{ object{ cone {<0,0,0> 1 <0,50,0> .7 hollow} pigment{Clear} } object{sphere {<0,0,0> .7 scale y*3 translate y*50 hollow }pigment {Clear}} object{sphere {<0,0,0> 1 scale y*3 hollow }pigment {Clear}} } //a simple grip #declare grip= union{ cylinder{<0,0,0><0,-7,0> 1} sphere{<0,0,0> 1 translate -y*7} torus {1.2,.5} } //a blue and a pink saber #declare blue_saber= union { light_source { <0, 5, 0> color rgb <0,0,.5> } object {blade interior {media{inner_blue_light }}} object {blade scale <3,.97,3> translate <0,2.5,0 > interior {media{outer_blue_light }}} object {grip texture {Chrome_Texture}} } #declare pink_saber= union { light_source { <0, 5, 0> color rgb <.5,0,.5> } object {blade interior {media{inner_pink_light }}} object {blade scale <3,.97,3> translate <0,2.5,0 > interior {media{outer_pink_light }}} object {grip texture {Chrome_Texture}} } //the scene: two sabers in a room box{<-100,-50,-100> <100,150,100> hollow pigment{White*.5} rotate y*20} object{blue_saber rotate z*30 translate <0,-20,0> } object{pink_saber rotate -z*10 translate <-8,-22,5> }