Alternative AA methods and their comparison with traditional MSAA*

Can You make some screens and videos with comparison of FXAA, SMAA and MLAA? :>

i should be able to find time over the weekend, i guess the only issue is how much quality will be lost to youtube HD :rolleyes: . might upload to somewhere else as high quality H264 (7000Kpbs ish) encodes.
 
Can You make some screens and videos with comparison of FXAA, SMAA and MLAA? :>
AA methods are all destroyed by *any* video compression, even very mild, unless you zoom in on them massively. The temporal compression really messes with the ability to see temporal coherence, which is of the utmost importance for AA methods. Better to have an interactive demo.

More importantly, where is MSAA(/SSAA with MSAA patterns) on that list of compared techniques? I'm more curious how SMAA compares to MSAA than anything else since it claims to address subpixel stuff.
 
It is not there because I never got a response from the driver-team why the MSAA-resolve breaks in Oblivion. So no MSAA.

Edit: one may use Catalyst 10.12 to do driver-MSAA, because later drivers also break driver-MSAA, nice job.
 
Of course it's bloody fucking ridiculous driver writers had to do behind the back of the game developers at the far less suited driver level what the game developers should have done inside the game engine ... that the driver MSAA code paths are fragile and prone to stop working on driver updates is hardly surprising.

We need to boycott any new PC games which don't support MSAA directly ... DX10.1 and DX11 offer enough API features to make it work, make it fucking work. Edge detection and postprocessing on top is fine and dandy, but get the basics right first.
 
AA methods are all destroyed by *any* video compression, even very mild, unless you zoom in on them massively. The temporal compression really messes with the ability to see temporal coherence, which is of the utmost importance for AA methods. Better to have an interactive demo.

More importantly, where is MSAA(/SSAA with MSAA patterns) on that list of compared techniques? I'm more curious how SMAA compares to MSAA than anything else since it claims to address subpixel stuff.

Sure, but that's better than nothing. Thats why Digital Foundry and iryoku used movies. Slowing down movies is also good method for AA comparison.
 
Wasn't it called the 'Chuck Patch'? I had my venerable X1900XT and loved showing off my HDR+AA+AAA shots of Oblivion to the nVidia peasantry. Those were the days.

It's one thing to want the drivers to stay out of the way, but when devs just refuse to implement features that the IHVs customers want I'm more than happy for 'Chuck' and his buddies to step in.
 
Of course it's bloody fucking ridiculous driver writers had to do behind the back of the game developers at the far less suited driver level what the game developers should have done inside the game engine ... that the driver MSAA code paths are fragile and prone to stop working on driver updates is hardly surprising.

We need to boycott any new PC games which don't support MSAA directly ... DX10.1 and DX11 offer enough API features to make it work, make it fucking work. Edge detection and postprocessing on top is fine and dandy, but get the basics right first.

This man has the right idea. Also, Etathron, what do you mean MSAA resolve breaks? In DX9 you can't resolve post-tonemap, IIRC, and tone-mapping is a somewhat non-linear op in itself, hence why it'd perceptually break AA when applied to an already resolved buffer...
 
Of course the reason drivers have options to force AA is because most developers don't care to bother and haven't even though we've had MSAA since Geforce 3. Most gamers don't care either. So the IHVs add the forcing options as value added features so you can at least try to force it on. I have no doubt that the force options are seen as selling points for them too. They love to advertise their fancy AA features even if only basic MSAA is somewhat common.

With the post process AA techniques I'm guessing that MSAA is going to become even less popular. But since it's trivial to implement these that they will be very popular. Sadly they are barely better than nothing.
 
This man has the right idea. Also, Etathron, what do you mean MSAA resolve breaks? In DX9 you can't resolve post-tonemap, IIRC, and tone-mapping is a somewhat non-linear op in itself, hence why it'd perceptually break AA when applied to an already resolved buffer...

You can resolve the MSAA-buffer to a non-MSAA buffer in DX9 with ATI-drivers. Search for RESZ in the ATI-extensions papers. Color-buffers are automatically resolved with a simple blit.
 
AA methods are all destroyed by *any* video compression, even very mild.
Surely lossless compression can be used. FWIW, to evaluate AA in the past, I have used huffyuv (in "RGB" mode), followed by zip or equivalent to reduce the file size (as huffyuv doesn't have interframe compression).
 
It's certainly possible to evaluate, yeah, but you need to be careful. Like I said, blowing it up (using nearest neighbour resampling), slowing it down, then using lossless or high bitrate compression is the best bet. Uploading a raw video capture to YouTube is probably not going to get you anything useful ;)
 
Why it has never been used the Nyquist frequency theory to avoid video aliasing in 3D rendering?
So that to display on a 1080p monitor the GPU renders at 2160p and outputs at 1080p.
Like for digital audio.
 
You misunderstand sampling Theory ... the Nyquist limit concerns the frequency content of the signal before sampling. The bandlimiting has to happen to the continuous signal, in audio this is generally done with analog filters. In texture filtering this is done by having a filter of essentially infinite size with the help of MIPMAPs, but this isn't an option for other types of image content (and not even a complete solution for textures ... because we don't generally have big flat surfaces with unmodulated textures).

If you sample a signal with content above the Nyquist limit (ie. render at 2160p) it will have aliasing, no post processing you do after that (ie. outputting at 1080p) is going to remove that any more. Rendering at 2160p and downsampling to 1080p IS supersampling though, and it is guaranteed to reduce aliasing (MLAA and friends can provide no such guarantee, it can actually bring the image farther away from what it should be). In that respect it's handy, and often used, but it's not a complete solution.
 
Last edited by a moderator:
Why it has never been used the Nyquist frequency theory to avoid video aliasing in 3D rendering?
So that to display on a 1080p monitor the GPU renders at 2160p and outputs at 1080p.
Like for digital audio.
What you describe is supersampling, and it is a solution to elliminate aliasing of all sorts but it's extremely costly. If we had the processing power, rendering everything at 16x larger resolution (the two/four times larger you suggest isn't enough data to elliminate aliasing, and movies actually use 64x) and downsampling would give great IQ, but that's not technically possible. Hence we have to find alternative, low-cost tricks to elliminate the byproducts of lower-resolution sampling. None of these AA techniques being developed are to get best possible IQ, but best possible IQ within the very finite hardware we have to work with.
 
Don't forget it's corollary, not uttered by anyone famous ... but still important to keep in mind ... a pixel is not a little sinc either.

Sampling theory is all fine and well, but perfect brick wall filtered anti-aliasing doesn't look very nice.
 
New SMAA release with movie showing its capability in Crysis 2 and geometry tests, so impressive.
http://iryoku.com/smaa/#movie

Its almost up to pair with 16xCSAA and cost 1,3 ms [gtx 470 and 1080p]. All devs should use this AA from now on, with options to increase resolution 30-50%, use this AA and downsample, it would probably eliminate all left artifacts.

Source code: http://www.iryoku.com/smaa-t2x-source-code-released
 
Last edited by a moderator:
Quality is not even close to 16X CSAA to me, and 1.3 ms on 470 means probably a lot higher on consoles. And Im surprise FXAA fail to fix any thing in distance just as much as MLAA. Always though it just use blur on sub pixel.
 
Back
Top