AFAIK There is no such thing as "software" anti-aliaising. It's always something done by the GPU in a matter or an other, just because it's something you cannot do before any GPU computing. You need the frame to be rendered.
I guess he means setting it in the software, i.e. game, or forcing it through the gpu's driver. I read quite a lot about this, and the most people who know what they are talking about seem to agree that forcing AA through the driver is primarily for aa-ing games that don't have AA in the first place, mostly old titles. If a game comes with an AA setting, it's adviced to use the in-game setting and not force it cause this often results in conflicts. However, in most games the AA method (multisampling, adaptive ms, supersampling and all their variations) can not be chose in-game and has to be set via the driver.
one thing i will credit s3 is, on the optimisation of this game... any track full grid, x4 aa and ultra settings 60s fps on a gtx970.. (reflection to low though as smoother) pretty impressive.
Well, Dynamic Super Resolution is what we oldtimers used to call supersampling, or downsampling, and it's the mother of all AA methods. You're right, it definitly gives the best results by far and it can make regular AA (in-game setting) unnecessary, if one can afford to enable it. May I ask what gpu you have? Cause this is very taxing.
I prefer having the super resolution at all I have a 21:9 34" running 3440x1440 since few weeks, AA is almost unnecessary at this resolution (I also need to cut it off because my old 660 Ti stuggle to render any AA at this resolution )
Do you know the difference between a DSP and a software? Your GPU is a DSP. That's what i mean and it probably makes sense because i read a paper which advices to use software AA instead of GPU AA when possible, and it's not logical. An electronic circuit is always faster than the corresponding code. That's the reason of DSP's.
Perhaps because they are two different things. Software routines and DSP routines. In Pcars there is one DX2 setting which is a custom one made by SMS. Does it mean that the others are traditionnal algorythmes?
Oh yeah !! I really don't get what you mean here ... True "software AA" would be too much a hit in performance. I would need the data to go back and forth between the GPU (witch render the frame), and the CPU for it to apply any AA on the Frame the GPU is rendering. You'll lost a LOT of frame rate doing so. It would be a huge back in time when GPU didn't exist. GPU are made for this. I thing what you call" software" AA is more about the "generic AA" against AA designed by GPU makers for their own GPU (like CFAA or CSAA, etc ) But here it mostly depends on what the game support, and what you can activate in regards of the GPU you have giving the performance goal.
BTW : if you start to dig into it you'll find that AA is a really complexe thing... There's not "one better solution" because they're all a matter of compromise in regards of you're GPU, the game itself, the resolution you're running the game, the visual quality you're looking for at what performance cost. Somes may don't like the "blury" effect of a AA, other prefer most FPS, some don't care about the performance hit, etc .. Some GPU handle some kind of AA better than other, if you're running 4k it's not the same as 1080p... etc etc
I think the confusion lies in the names and the methods those imply. AA is always carried out by the gpu. DSP/supersampling/downsampling is the oldest, simplest and most resource hungry form of AA. It simply calculates more pixels than your monitor can display and then presses those into the resolution your monitor can display. Result: smoother edges on all objects being displayed. But as it is very taxing the developers tried to come up with less demanding sollutions, like MSAA and adaptive forms of it that also apply to transparent textures. Those methods only look at certain parts of a picture (texture edges) and smoothen those by doing more calculations for those areas. In a simplified way it is also supersampling, but it only applies to certain areas of a picture instead of the whole picture as DSP/SSAA/downsampling does. It does need less gpu power, but it doesn't look as nice as downsampling. If your gpu can handle it then DSP/SSAA/downsampling will always give the best results. If it can't you can go for MSAA. If even that is too demanding for a gpu you can use post-processing AA methods like FXAA or AMD's morphologic filter, but they just blur the picture to make it appear smoother.
"software AA" in rendering is what @Christian Göpfert mentioned under post-processing AA methods. FXAA, Temporal AA, lots of algorithms... software means the developers use custom shaders to pull it off, it's not really about involving CPU. The alternative is the hardware AA that is "in silicon" (not using shaders but fixed function units in hardware) which is MSAA. Even for super-sampling shaders are often used to do the actual downsampling and weighting of the high-res input. MSAA can only anti-alias polygon edges, while the software approaches can anti-alias "shading edges" (think shiny sparkles on metal grid...). The latter is therefore predominantly used in games today where we have a lot of material detail and more complex lighting because we are close to "small details". In a racing game the only thing we are really close to is the interior. Other structures are fairly big and the polygon detail, rather than the fine material details dominate, also cars typically have a lot of smooth surfaces, or the polygon edges are sufficient for shape. The situation changes for something like wet tarmac, shiny pebbles... where the "on-surface" lighting effects become more complex and prone to aliasing. Am a big fan of downsampling "older" games as well, as it often improves foliage rendering and especially older deferred shading titles benefit a lot from it. Modern games typically have native support for that or other software solutions. had posted here https://forum.sector3studios.com/in...figuration-graphics-card.189/page-2#post-4896
I don't think there is anymore silicon bits dedicated to AA in modern GPU. Since DX10/dx11 gen they tend to be more on the general purpose than specified task. All the computation can be done by what we used to call "shaders" back in the day of dx9/dx10... Shaders were fixed units, that can't do nothing else that what they were develop too. Now GPU use more general units (small and simpler units but a LOT of them !) that can be used for almost anything.
I always use the in-game AA setting with R3E, running 8xMSAA quite happily and the game looks good. I'm a little surprised at the lack of an anisotropic filtering option, not that the game looks worse without it. I guess this process is taken care of under the hood. I've tried DSR and various Nvidia Inspector settings and the cost/benefit isn't substantial enough over in-game 8xMSAA to persevere with (imo). DSR looks great but it's not worth having to turn down graphics settings to achieve a steady 60fps. With games like rF2 and SCE I find myself turning to driver AA solutions. These both have AA 'levels' which are not explained at all and I don't find the results particularly satisfactory either. With both titles I have found Nvidia Inspector's 8xS setting to provide nice results without being a massive drain on performance.
If you have enough power why not try downsampling, you can use software to force a higher resolution which is then downsampled to your prefered size say 2560x1440 down to 1920x1080, never had the system powerful enough to try it myself but supposed to do a good job on the jaggies. Couple of how too guides and explanation. http://forums.guru3d.com/showthread.php?t=366244 http://www.tested.com/tech/pcs/454383-aliasing-be-gone-how-downsample-pc-games/
The hardware still computes things like coverage masks (which is what MSAA is about), there is per-sample depth-testing in the raster output stage... Now even as you rightly say the programmability improved, there is still a lot of fixed-function units in the hardware. It is not like the whole pipeline is written in software. In this article here are some details on how the GPU processes a draw call https://developer.nvidia.com/content/life-triangle-nvidias-logical-pipeline and I happen to be the author of that General purpose means some unit in the hardware has to decode the instructions, and tell those hardware units that can execute something (say a multiplication) to do it, it also means it has to instruct other units to take care of the memory being passed around, registers filled... so you will loose time to orchestrate all that. While a fixed-function unit just "does something", no interpretation, no generic memory handling. It consumes some "bits" and outputs some bits in a fixed (minimal) amount of clock cycles. It is literally putting code into some wires. Why can a smartphone with a few watts play back a HD stream better than some old high-end PCs? Because the full algorithm to decode the video is in silicon, while your old PC lacking this, actually has to compute things in "software". And for the rasterization pipeline as it's standardized, there is many small tasks that are much better handled with this principle, rather than doing it in a general purpose way. That is also why there is only a fixed set of shaders that people can write, and how they interact is well defined. A graphics programmer doesn't have to write the actual triangle rasterization himself or the interpolation of values on the triangle... the hardware does it for him. hopefully did't sound too "lecturing"