SBT-raytracer 1.0 // kmyerkes@cs (9834437) // Karl M Yerkes // RayTracer Artifact // 2003/11/24 camera { position = (5, 2, 3); viewdir = (-1, -0.2, -0.5); updir = (0, 0, 1); } point_light { position = (-5, 2, 3); colour = (.98, .95, .86); constant_attenuation_coeff= 0.15; linear_attenuation_coeff = 0.003372407; quadratic_attenuation_coeff = 0.000045492; } directional_light { direction = (-1, -1, -0.2); color = (1, 1, 1); } scale(.2, 1.5, 1.5, sphere { material = { diffuse = (0, 0.13, 0.13); specular = (0.24,0.24,0.24); transmissive = (0.7, 0.7, 0.7); index = 1.1; } } ) translate( 1, 1, 1, scale(.2, 1.5, 1.5, sphere { material = { diffuse = (0.12, 0.12, 0); specular = (0.24,0.24,0.24); transmissive = (0.7, 0.7, 0.7); index = 1.1; } } ) ) // Note that the reason these are emissive is that otherwise // you have problems if transparent shadows aren't implemented. translate( -2, -1, -10, scale( .2, .2, 20, cylinder { material = { emissive = (0.8, 0.4, 0); diffuse = (0.0, 0.7, 0.4); shininess = 112.0; } } ) ) translate( 0, 2.5, 0, rotate( 1, 0, 0, 1.3, translate( -2, -1, -10, scale( .2, .2, 20, cylinder { material = { emissive = (0.8, 0.0, 0.4); diffuse = (0.0, 0.7, 0.4); shininess = 112.0; } } ) ) ) ) translate( 0, 3.5, 0, rotate( 1, 0, 0, .6, translate( -2, -1, -10, scale( .2, .2, 20, cylinder { material = { emissive = (0.0, 0.7, 0.4); diffuse = (0.0, 0.7, 0.4); shininess = 115.2; } } ) ) ) )