If you know the intensity of your lights and the reflectance and transmittance of the surface, you can easily calculate the maximum amount of light a ray can contribute to the pixel.
Ah, I see what you mean. Determine the brightest light in the scene and for each ray cast, based on the reflection/refraction levels of the shape, determine if it could possibly add more than, say, 5% color to the pixel and, if not, break out. That would be effective in reducing the computations for the walls and things when there are up to 4 raycasts, by which point there's no major impact to the pixel's color. This would especially help in the current scene because every surface is somewhat reflective/refractive.
When I said "sane levels", I wasn't commenting so much on image quality as I was on the time needed to complete the demonstration. Expecting people to spend an hour or more running this (or days without some additional guidance from you) may not be an effective way to get your point across.
I agree. I'll see what I can do to get it to run faster out of the box.
OK, I see where I made my mistake concerning 4x AA. Here it means 4x4 = 16 subsamples, not 4 subsamples (which would be 2x AA).
Yes, isn't that always the case, even in games or graphics card settings where you choose like 2X or 4X anti-aliasing? I mean, how would you render it if the user chose a total of 2 sub-samples per pixel, as opposed to in each direction; cast 1.414 rays per direction lol?
On that note, I'm thinking of how to get "smart" anti-aliasing where normally every pixel has one (original) ray cast, but only areas where there could be hard edges (on the edges/intersections of shapes) would be sub-sampled.
EDIT: This has been implemented. See my post below.
Edited by LaLaLa, 07 June 2011 - 06:57 AM.