// ===== 1 ======= 2 ======= 3 ======= 4 ======= 5 ======= 6 ======= 7 ======= 8 ======= 9 ======= 10 // Copyright 2002-2003 by Tor Olav Kristensen // Email: t o r . o l a v . k [_A_T_] g m a i l . c o m // http://subcube.com // ===== 1 ======= 2 ======= 3 ======= 4 ======= 5 ======= 6 ======= 7 ======= 8 ======= 9 ======= 10 #version 3.5; #include "colors.inc" #include "functions.inc" // For f_torus() and f_noise3d() global_settings { ambient_light color White noise_generator 2 } // ===== 1 ======= 2 ======= 3 ======= 4 ======= 5 ======= 6 ======= 7 ======= 8 ======= 9 ======= 10 #declare WrinkleFn = function { pattern { wrinkles } } #declare TwistedWrinkleFn = function { WrinkleFn( 2*cos(2*f_noise3d(4*x, 4*y, 4*z)*pi), 2*y + 4*f_noise3d(2*x, 2*y, 2*z), 2*sin(2*f_noise3d(4*x, 4*y, 4*z)*pi) ) } isosurface { function { 0.45 - f_torus( 1 - 2*f_noise3d(x , y/10, z/10), (1 - 2*f_noise3d(x/10, y , z/10))*0.7, 1 - 2*f_noise3d(x/10, y/10, z ), 0.6, 0.1 + 0.005*(1 - 2*TwistedWrinkleFn(x, y, z)) ) -0.003*(1 - 2*WrinkleFn(10*x, 10*y, 10*z)) } max_gradient 15 contained_by { sphere { <0, 0, 0>, 200 } } pigment { function { TwistedWrinkleFn(x, y, z) } color_map { [ 0.2 color Brown*0.125 ] [ 0.5 color White*0.300 + Yellow*0.180 ] [ 1.0 color White ] } } } // ===== 1 ======= 2 ======= 3 ======= 4 ======= 5 ======= 6 ======= 7 ======= 8 ======= 9 ======= 10 #declare RedLight = light_source { <0, 0, 0> color Red*2 fade_distance 3 fade_power 4 } #declare RR = seed(1); #declare Cnt = 0; #while (Cnt < 20) light_source { RedLight translate (<1, 1, 1>/2 - )*25 } #declare Cnt = Cnt + 1; #end // while light_source { <3, 2, -3>*10 color White*1.8 + Blue*0.5 fade_distance 40 fade_power 4 shadowless } camera { location -15.3*z look_at 0*y angle 90 } // ===== 1 ======= 2 ======= 3 ======= 4 ======= 5 ======= 6 ======= 7 ======= 8 ======= 9 ======= 10