BenSkywalker said:
Do you think using the current isotropic filtering implementation as it relates to AA would be equal to or greater then a sampling implementation that was weighted based on angle in relation to the camera?
Ben, we all agree that infinite resolution would be the perfect solution, right? So I think we also agree that a 1600x1200 resolution screenshot is better than a 800x600 resolution screenshot, correct? So let's the graphics card to that, namely render a 1600x1200 screenshot, preferrably with anisotropic filtering. That would be nice, would it not? Is there anything wrong with that 1600x1200 screenshot - compared to the 800x600 screenshot? I think we both agree that there's nothing wrong? Do you also agree that this 1600x1200 image after all the rendering is now a simple 2D image, painted on a 2D screen? Just a like a photo or a digicam snapshot would be? A photo also contains 3D elements, but the photo itself is just a 2D canvas, and resampling a photo has nothing to do with angles or the camera, do you agree?
Now let's say we have a LCD with 1600x1200 pixels. That 1600x1200 screenshot on our 2D LCD screen would look very nice, right? Now let's say we have a LCD with only 800x600 pixels. What would be the best possible way to downsample the 1600x1200 screenshot to 800x600? There's nothing angle specific anymore. So the only question left is for the best downsampling algorythm. So which algorythm is the best one in your opinion?
Let's further guess that there's a green/red raster in that screenshot which can be shown correctly in 1600x1200, but which is too fine for 800x600.
According to what you said in all your previous posts you seem to think that we should now out of a 2x2 pixel raster take 1 pixel of the 1600x1200 screenshot and drop 3 pixel for the final 800x600 image. This way we would only get green and red pixels, but no brown pixels. This would according to your previous comments give the most accurate/detailed image, because we get no brown pixels this way. Is that your opinion? Do you understand that the result of this operation would be (almost) identical to directly rendering at 800x600?
Please understand that most SSAA implementations do what I described here, namely rendering a frame at e.g. 1600x1200 instead of 800x600 and then downsampling the final 2D "foto". The downsampling algorythm used for SSAA is usually bilinear interpolation (I think). Here's a page which shows an image comparison for different downsampling algorythms:
http://www.smalleranimals.com/isource/isreduce.htm