wow this looks to be a great article. will read it when I come from work
thanks
Yeah, it's a really good one.
After a few days of trying stuff out I'm finding that the best results are obtained by combining multiple types of AA. For instance, 2x MSAA + 2x DSR + FXAA. Each type has its own advantages and compensates for the other's flaws. The thing about AA is that it's not one problem, it's 5 problems. Geometry edges, transparencies, subpixel, texture and temporal aliasing all degrade the image in their own way, and there's no one technique that covers it all perfectly. Some AA methods even degrade the image while fixing other problems.
MSAA has a medium perf hit that will do a decent job with the edges and subpixels, but won't help with transparencies and the temporal aliasing that occurs within them.
MLAA/FXAA/SMAA will do an amazing job with edge AA and has practically zero perf hit, but does nothing for everything else and degrades texture quality in the process.
SSAA (in game, likely rotated/sparse grid) has a major performance hit, and improves all aspects..but you'll never have enough performance to spare to run it at max.
DSR has an OGSSAA component to it, which is inferior to RGSSAA as far as edge aliasing goes, but its compatibility is perfect and it increases texture detail. The other component is the gaussian filter that increases the width of the resolve and reduces subpixel/temporal aliasing.
So basically DSR's increased texture sampling is able to counteract FXAAs texture blurring - so you can get basically perfect edge AA by combining the two without losing any texture quality. If subpixels need more attention, you can use 4x MSAA + 2X DSR - this will give you 8x subpixel and edge samples, 2 transparency samples and still keep reasonable performance.
I'm starting to see how nvidia can really improve this in the future too - instead of a gaussian blur, they can use an FXAA type filter in DSR itself. Notably there's also some modes that don't give an even number of samples per pixel, like 1.5x....perhaps they can shift the weight of the resolve every frame and provide a pseudo temporal/jittered grid type of downsampling.
Last edited: