The Finest Pixels for CS:GO – Antialiasing

When reset to default settings, CS:GO does
its best to troll you. It deafens you when you reach the main menu.
That’s bad enough right there. But the problems continue when you reach the graphics options.
For some STUPID STUPID reason that there’s absolutely no point to, texture filtering
is set to trilinear. This is the second worst option available! What this does is, even
if your texture detail is set to high, it’ll switch them for low quality ones at a distance
or when at a steep angle. If you want it to look like 1.6 then this is GREAT! However,
I see no point. The performance impact is minimal- just set it to highest 16X and leave
it that. But for some other stupid, stupid reason,
it ramps MSAA up to 8X and turns FXAA on as well.
Which is STUPID! But… why is it stupid?
A pixel represents that bit of the screen. But this isn’t good enough. Here you can
see a scene from CS:GO, at a low resolution so the problem is very obvious.
It’s full of jaggies! Horrible, abrupt edges where one thing stops and another begins.
The wires look like they’ve been drawn in using Paint! The aerials look like random
black pixels, some floating in the air. This fence here isn’t a fence, it’s just a
bunch of lines that aren’t connected to each other! And these roof tiles here are
very unsure of themselves. That was an example from a proper map, but
I made a MAP FROM HELL to show the problem even more clearly! With a high-resolution
image, it looks fine. But the moment we switch to low resolution, the problem becomes clear.
There aren’t enough pixels to represent every wire and the gaps between them, so detail
is lost. In this case, a lot of the lines disappear entirely. This is a worst-case situation,
but you get the idea. What can we do about it?
What you need is anti-aliasing. Now this is a fascinating topic. Really, it
is! Antialiasing has been with us since the 90’s. It’s been improved generation upon
generation. And yet, nobody can agree on which method’s best. They all have pros and cons!
Some are really, really complicated. Fortunately for you, Global Offensive only
uses the simple ones. It’s about 10 years behind every other game in this regard.
MSAA is the clever kind. Say these red squares are individual pixels,
and this black line is what they need to represent. Without anti-aliasing, the pixels can only
be black, or white. Let’s take a look at this one here, highlighted
in yellow. Without anti-aliasing, because the centre of the pixel is black, the WHOLE
of the pixel is black. BUT, with 2X MSAA, instead of going by what’s
in the centre of the pixel, it tests 2 different bits, and gets the average of those colours.
So because one is black and the other is white, the pixel becomes grey, the average of the
two. The more of these samples, the better the
result. 2x MSAA picks 2 spots within a pixel, 4X picks
4, and 8x chooses… …9. Okay it’s 8. MSAA is full of good stuff.
But there are down-sides. It doesn’t work with transparent textures… like this fence
here, or the leaves on trees. And there’s a bit of a performance impact, especially
with 8x. But how much MSAA do you need? Obviously,
the higher it is, the better the result. 4X was always the go-to amount back in the day,
and 8X considered overkill. But as your resolution increases, the importance of each pixel goes
down. If you’re at full HD, I think 4X is as much as you’d ever need, but you could
probably even get away with 2X unless you’re really into staring at stray pixels. I did
a video 4 years ago where I discovered you could see through distant bars better at higher
MSAA settings, since it acts like a higher resolution. But in reality, I’d rather have
the extra framerate, and so would drop the MSAA to 4X or 2X, depending on what I’ve
had to eat that morning. That’s MSAA. Demanding, but clean and smart.
FXAA, on the other hand, doesn’t know what the hell anything is supposed to be so it
blurs it all into oblivion. Seriously- that’s all it does! It’s called
‘Fast, Approximate Anti-Aliasing’ for a reason. And yeah it took me a while to find
the X there as well. It looks at the screen, thinks about contrast
and depth a bit… and then BLURS EVERYTHING. A human could look at this distant aerial
and say ‘yeah it’s meant to look like this!’, but FXAA just thinks ‘these are
the pixels, I must blur them!’ and does THIS.
That’s why I don’t like FXAA. I mean, sure, it does a good job in some bits like
where the roof meets the sky. But that’s only because it lacks intelligence, so blurs
everything extensively for good measure! You wouldn’t give a photographer praise for
applying an Instagram filter- especially not if it’s the same one every time. And you
wouldn’t praise the military for killing a few bad guys if they also bombed a whole
city in the process. For the same reasons, don’t be impressed by FXAA either.
But there are uses for it. Firstly, it won’t slow down your PC much, and secondly, because
it blurs EVERYTHING, this includes the fences and leaves that MSAA would miss out. And you
know what I was saying earlier about antialiasing getting less important as the resolution increases?
Once you reach 1440p, or in my case, 4k, I actually find that FXAA is all that I need.
YOU STILL NEED SOMETHING! But when the pixels are so small and insignificant, rather than
slow my PC down with MSAA, I find FXAA is just enough to take the edge off.
But at typical gaming resolutions, I don’t find it’s good enough. I don’t like its
unintelligent blur. I find the way it deals with distant lines just as distracting as
no AA at all. Here it is in motion, so you can see what I mean. Yes it’s blurred, but
what has that achieved? But this is where I had an idea. What if we
keep both of them on? BUT, rather than CS:GO’s default 8X, we lower MSAA to 2x instead? This
way, we get much better performance, still have smart anti-aliasing to reduce movement
shimmer, and then get the blur applied to that to eliminate any sharp edges that remain.
Effectively using each AA method to soften the others’ weaknesses.
And you know what? I like it! I would say it’s comparable to 8x MSAA in many ways,
but will likely run a lot faster on your setup. At any resolution, this may be a good option
to try. But at the end of the day it comes down to
personal preference. The sadists among you may prefer the raw, pixelated style of no
AA at all. Weirdos. Others may want quality no matter what- in which case I suggest turning
AA off completely and instead looking into DSR or VSR, depending on which type of graphics
card you have. But for the rest of us- which I suspect will be the vast majority- I would
suggest giving this combination a go. In most maps, I’m happy with how this looks.
You can still see the problems in a worst-case scenario like this. And when it comes to smoothness
while moving, you can never have enough resolution or anti-aliasing.
But- one last thing, which possibly undermines everything I’ve said up until now! I ran
benchmarks under GPU-limited conditions to see just HOW much of a performance impact
anti-aliasing would have. We’re talking 4K, maximum settings and so on. And here’s
how my framerates changed when compared with no antialiasing. Yup! I could have FXAA, 4x
MSAA OR my suggested 2X with FXAA for no performance hit. Within a frame or two, at most. As in,
you might as well enable one of these because they’re free to have! And 2x on its own
actually ran 6% faster for some reason. I double-checked and everything! I’m not going
to use these results to influence my recommendations in this video since your PC’s results may,
and probably will, vary. Benchmark your PC at your settings, see what impact anti-aliasing
has, and decide from that. But just remember: you might be able to get anti-aliasing with
none of the performance down-sides. It’s worth checking out!
As you can probably tell, I love this topic. Modern games- particularly Rainbow Six Siege-
used REALLY clever technology to keep framerates high and your visuals, smooth. PS4 Pro and
Xbox One X both require clever techniques to reach 4K resolutions. And Valve themselves
use the same cool stuff to make VR run fast on existing hardware. There’s a PDF they
made a few years ago about it, which you can check out. Thanks again, Alex. I don’t think
it’s even running on Source at the moment, but maybe these kinds of features could benefit
CS:GO. Not by adding more detail, but instead by keeping framerates high, frametimes consistent,
and jagged edges to a minimum. Download my evil aliasing map to test for
yourself in this video’s description. And check out my ancient video on antialiasing
here! And if you want to know what CS:GO and Left 4 Dead 2’s zombies have in common,
see this video from last week.

100 Replies to “The Finest Pixels for CS:GO – Antialiasing”

  1. yeet i got a shit computer so i look at them raw pixels.
    actually, half life 2 runs fine with it, but cs:go doesn't.

  2. So, cause no one pointed it out, Valve enables MSAA and FXAA by default cause MSAA doesnt work with specular highlights. Its a tecnical problem that cant be solved cause the way MSAA works. There are allot of videos out there explaining it (I think Digital Foundry did one), and thats why some modern games use 2 AA soulutions at once (Like Resident evil 2).

  3. The real horror when ur chilling and watching this video but youtube randomly switches resolution to 4 pixels

  4. Is it just me that spent 8 mins of my life watching a video about which setting are best for the graphics of a game I’ve never played?

  5. when i try to change the AA setting the only option it gives me is none, idk what to do and no video covers it

  6. Я нихрена не понял, что ты сказал. Но ты попал мне прямо в душу.

  7. my fps went from 110 to 70 when i switched from no msaa to 2x, damn i dont know how you got an fps boost from switching that

  8. Maybe a little bit late, but Msaa 2x runs better than 2x + FXAA.
    2x + FXAA, is like 2,5x Msaa, it's an additional step to 2x normal.

  9. Can you please make a video regarding best possible AA methods for apex legends (also source engine) probably using nvidia profile inspector or something similar as it only supports TSAA from in-game menu. Thanks.

  10. FXAA actually tries to only blur edges. It doesn’t always succeed and ends up blurring stuff it shouldn’t. The reason it looks as bad as it does is because it has no extra samples. So you get shimmering all over.

  11. Could i know the exact resolutions you used for high and low? Just to compare if having 4K with full AA gives the same detailing as 1080p with also full AA.

  12. My professional guess about the 6% performance gain is that you take away some workload from the CPU and let the GPU work. If you look at your GPU/CPU-load while playing with out any AA the graphic card is chillin for the most time.

  13. Okay wtf is the deal with TAA, because (yes this isnt CSGO but its the same topicish) in subnautica, you have No AA, Low AA, Medium AA, and High AA, but also have the option to use FXAA or TAA. I play on TAA on high, because it makes foliage look REALLY good, without much fps drop, but whenever I move the seafloor looks incredibly blurry and disgusting, similar to what FXAA does but even worse.
    So, because of this, if im in a dense foliage area like the kelp forest for a while, I play on TAA, but when im in a rocky area like the ILZ, I use FXAA.

    How does TAA work, because I want to know why it makes some stuff beautiful, and some stuff absolutely horrid

  14. Philip! I just noticed that Google search picked up your timestamps in the description, when I was looking for "csgo fxaa" your video appeared and I could just directly to the FXAA section because you put them in the description. That's awesome!

  15. PLS DONT AUTO TRANSLATE YOUR VIDS PLS ! its so funking wired to read the titel in german for example … pls just dont i dont understand why ppl do this any way

  16. I hope to god Valve adds in SMAA or TAA. Also, you didn’t see much of a performance impact from MSAA because CSGO is generally CPU limited.

  17. interestingly, i tried the 2x MSAA and FXAA combo and i couldn't hit anything. turned FXAA off and my aim was back to normal. not sure if it was placebo or if the slight blurriness was throwing me off, but worth noting.

    i play on native 1920×1080 fwiw

  18. FXAA is an offshort of morphological aa, that means it looks for the shape of things and reconstructs them, generally it looks for straight lines. it works well in this case but when the line is so undersampled it doesnt look like a line anymore it fails. that's just the nature of it. But it doesn't "blur" things.

  19. The approach you describe is basically what SMAA 4x and TXAA 4x does already, with added temporal reprojection, giving 2 samples from 2 frames for 4 samples and then does the morphological reconstruction over that. It's a shame that Nvidia had to lock down TXAA because it is still the best option of antialiasing bar none, but only a few games support it.

  20. Antialiasing destroys the picture's contrast and makes it look like a blurry mess. The only positive thing about it is how it restores thin things like antennas and fences. Nothing else, actually.
    We shouldn't play with AA. We just need to make better monitors with small enough pixels and thin thing restoring filter. That would be 1000% better than what the best AA out there can present us.

Leave a Reply

Your email address will not be published. Required fields are marked *