Randomness in Textures' Normals Random variation is a commonly-used technique to smooth out discrete models of continuous effects, as the original raytracer's supersampler exhibits. We applied this technique in a few new places. First, we added random variations to the calculated normals, to soften the perfect smoothness of reflective surfaces, so that objects don't have to be as smooth as quicksilver. A pleasant side-effect of this process is that it eliminates noticeable contour lines on a smooth object, similar to supersampling, but without the inefficiency casting multiple new rays every time a ray is reflected. Second, we used a completely random normal function to model diffraction, the property of tiny moving flat objects like dust particles that makes them reflect light in unpredictable directions.
Results Here are some images that demonstrate the additional functionality of our raytracer.
A white sphere with dimples. The silhouette is still that of a sphere, however, the artificial normal-function gives the impression that the surface is dimpled. A disco ball. This image was rendered using a similar technique to the golf ball image, but with different parameters to the normal function. A glass sphere against a striped background texture.