What is anti aliasing, what does it do?

Square pixels, round shape

Anti aliasing gets rid of jaggies, or aliasing. Aliasing is the artifact that occurs when game engines render a smooth 3d shape onto a 2d frame, comprised of pixels. Because pixels are perfectly square, sometimes those curves in a scene can look jagged, this is most obvious on outer edges of objects.

Anti aliasing technology helps removes those artifacts either by aiding the processing of that frame with higher resolution sampling or post processing a frame, detecting edges and softening the jaggies.

Jaggies are less of an issue at higher resolutions, a 4K image should have fewer jaggies than a 1080p image simply due to the density of pixels an an image, the round circle will look rounder with more pixels representing it.

Should I turn anti aliasing on or off

If you have enough processing power you should definitely turn it off, AA dramatically reduces noise and improves image quality. If your game is struggling to keep up frames per second, AA should be the first thing you should turn off, it’s quite demanding.

Some competitive online gamers like to keep AA off to be able to see distant opponent players because their jaggies move. Your call!

Which anti aliasing should I use?

I would recommend using SMAA, SMAA S2X or SMAA T2x as a starting point, these types of AA provide good image quality while having a medium impact on performance. If you have a relatively powerful machine without high resolution or frame rate requirements (hello 120 Hz), then SMAA is going to provide really good bang for buck.

If you have a older or lower end machine, but cannot stand jaggy images, then FXAA provides smoothing with very little performance cost, the issue here is you trade jaggies for blurriness, pick your poising.

High end machines can use SSAA or MSAA, it provides the best picture but comes at a very heavy framerate cost, only worth it if you’re looking for cinematic gaming.

Types of anti aliasing

From least to most demanding (approximately)

FXAA (Fast approximate anti-aliasing)

FXAA is an Nvidia AA, it’s known for not requiring a ton of processing power to achieve its effect. FXAA is a post processing type of anti aliasing, it takes the rendered frame and uses an algorithm to detect which parts of the screen need to be smoothed.

FXAA will detect edges where jaggies might occur and smooth the edges with approximate colour, the effect is a smoother edge.

Generally, FXAA causes a lot of overall blur and smudging to achieve a smoother edge. If jaggies really bother you, and you don’t have a lot of computing power to spare, then FXAA can help you out but I’d recommend using a more detailed AA method.

TAA or TSAA (Temporal anti-aliasing)

Temporal anti aliasing uses time to help smooth out edges. TAA looks at previous rendered frames in a buffer to determine edges rather than just analyzing the pixels of a single image. TAA then applies similar anti aliasing techniques to those edges it detects.

TAA isn’t super common, there’s more of a performance hit with TAA when compared to FXAA. The image itself is still not the best, there’s a significant amount of blur that occus with TAA.

TXAA (Temporal anti-aliasing Nvidia style)

Nvidia’s version of TAA.

MLAA (Morphological anti-aliasing)

MLAA is another post processed form of anti aliasing.

MLAA finds borders in the image with specific patterns. Then the algorithm blends the pixels based on the pattern it detects.

The resulting image is slightly better than FXAA but at a higher computing cost.

SMAA (Subpixel morphological anti-aliasing)

SMAA is an improved version of MLAA, another post processing type of AA. SMAA uses the GPU instead of the CPU in MLAA.

SMAA works the same way as other post processing AA, it detects edges and applies filtering to get a smooth edge. SMAA has an updated algorithm for better detecting edge patterns and uses more GPU processing to get the results.

SMAA is a very good balance, it keeps a relatively sharp and smooth edge while moderately adding the processing load. I would start with SMAA if its available in your games and work from there.

You can find more details on SMAA here.

SSAA (Supersample anti-aliasing)

SSAA is real-time anti-aliasing tech and is the most resource intensive form of anti-aliasing. SSAA is essentially a brute force method of AA that gives the best image quality but at a huge performance hit. SSAA renders a scene at a higher resolution than normal, say 4K and uses that render on a 1080p screen. Because SSAA renders way more resolution, the square pixels are much smaller and the resulting 1080p image is smoother and jaggy free.

This is what the x multiplier means when picking SSAA, SSAA 2x is twice the normal resolution, 4x is four times and so forth. Your computer basically has to work that many times as hard to produce an image at your native resolution, it generally is not worth it to use SSAA because of the performance hit.

MSAA (Multisample anti-aliasing)

MSAA uses the same higher resolution technique as SSAA but only super samples the edges of objects instead of the entire screen. While this makes MSAA less resource intensive than SSAA, it leaves any textures and internal objects alone to be potentially jaggy.

MSAA is still super sampling at the edges so it’s still pretty resource intensive.

Combo anti-aliasing types

Games now use a combination of AA techniques to achieve a sharp image while trying to reduce the performance hit.

TXAA

Combines MSAA and TAA, it is only found on Nvidia cards. TXAA 2x has 2x MSAA.

TSSAA

Combines TAA and SSAA, uses tempotal to detect jaggies and super sampling to remove jaggies.

SMAA S2X

SMAA and MSAA 2x

SMAA T2X

SMAA and TAA 2x. SMAA T2X is probably the best bang for buck in terms of picture quality to performance ratio right now.

SMAA 4x

SMAA + MSAA 2x + TAA 2x

DLSS (Deep learning super sampling)

DLSS is Nvidia’s brand-spanking-new AA tech found on the latest raytracing cards. DLSS uses AI to learn to apply perfect smooth frames to games when detected by the card.

Instead of a fixed algorithm to detect jaggies or brute forcing super sampling, DLSS takes samples from gamers over time to better detect and predict jaggies. DLSS relieves the video card with the responsibility of detecting jaggies and applying AA, freeing up resource to use on things like ray tracing.

The verdict on DLSS is not yet out, DLSS gets better over time, so far not many games support DLSS to really figure out if its a true game changer, newer games like Control seem to perform and look great with DLSS.

Read more about DLSS here.

Anti-aliasing examples

DOOM - No AA
DOOM – No AA
DOOM - FXAA
DOOM – FXAA
DOOM - FXAA 1TX
DOOM – FXAA 1TX
DOOM - TAA
DOOM – TAA
DOOM - SMAA
DOOM – SMAA
DOOM - SMAA 1TX
DOOM – SMAA 1TX
DOOM - TSSAA 8TX
DOOM – TSSAA 8TX