This is the long version of the file used for submission to the fourth short code contest (SCC). Since I use random numbers in the main code, I used this to choose the best seed for the job. So, the final result reflects my personal sense of aesthetics just a bit. The most amazing thing for me about this is the number of curves you can get from a bunch of flat surfaces (as long as they are refractive). The way the curves come about is due to the angle at which the ray intersects the refracting surface. As the angle changes, so does the degree of refraction. If you want to see a real world example of this, stick your face right up to a fish tank some time and look at one of the edges of the other side. The perfectly flat surface on the other side of the tank will look like it is bowing outward, away from you. My only regret is that I couldn't think of a short way to get dispersion in here as well. It looked really cool. In order to find a nice combination of random seed and number of boxes, I included the following code #declare MAX=16 ; #declare KK=floor(clock/MAX) ; #declare LL=clock-MAX*floor(clock/MAX) ; #debug concat("clock = ",str(clock,3,3),"\n") #debug concat("KK = ",str(KK,3,3),"\n") #debug concat("LL = ",str(LL,3,3),"\n") changed the following lines, #local S=seed(1) -> #local S=seed(KK); #while(C<8) -> #while(C