#include "colors.inc" #include "metals.inc" global_settings { assumed_gamma 2.2 } global_settings { ambient_light rgb< 3, 3, 3 > } // settings #declare drum_length = 100; #declare max_bubbles = 500; #declare R = seed(0); //#declare mytex = texture { pigment { color rgb < 1, 1, 1 > } } #declare mytex = texture { T_Chrome_5C } // bubbles #macro drum( drum_radius ) union { #declare n = 0; #while ( n < max_bubbles ) #declare bx = ( rand(R) * ( drum_length * 2 ) ) - drum_length; #declare by = ( rand(R) * ( drum_radius * 2 ) ) - drum_radius; #declare bz = ( rand(R) * ( drum_radius * 2 ) ) - drum_radius; sphere { < bx, by, bz > rand(R) } #declare n = n + 1; #end } #end // camera camera { location < 0, 0, -2000 > look_at < 0, 0, 0 > angle 5 } light_source { < -200, 200, -200 > color White shadowless } // the back wall plane { -z, 0 texture { pigment { color rgb < 0.6, 0.9, 0.9 > } finish { ambient 0.1 diffuse 0.7 } scale 0.01 } } // drums object { drum( 100 ) texture { mytex } rotate x * 360 * clock } object { drum( 90 ) texture { mytex } rotate x * 720 * ( clock + 0.3 ) } object { drum( 80 ) texture { mytex } rotate x * 1080 * ( clock + 0.6 ) }