Why no 3dfx style FSAA today?

BlackAngus

Newcomer
So maybe this is my subjective option of the great yesterdays but...
It seems like we have gone backward on AA since 3dfx style T-buffer powered AA.
As I remember it was partially so awesome because it worked on every game.
It seems like that was the best AA output I have seen for what seemed to be very little overhead.
So was there something in FSAA/T-buffer that didnt scale well to todays graphics? Why don't we still have this great quality of AA for reasonable overhead?
I would love to get AA that good again, especially with VR coming.
 
It seems like that was the best AA output I have seen for what seemed to be very little overhead.
This is rose-colored glasses at its best. :) "T-buffer" was just regular ole supersampling, although with rotated sample grid (shifted 45 degrees off centerline), which improved AA on near-horizontal/vertical lines. where you need it the most.

Supersampling unfortunately has 100% rasterization cost overhead per additional sub-pixel drawn, so 2x AA is 200% cost of no AA, 4x is 400% cost and so on. :p Supersampling is available in the drivers of modern videocards, for games using certain DX versions (for AMD, I believe driver supports DX10, maybe also 11? Not sure.)

Anyhow, the cost penalty of supersample in modern games is pretty prohibitive. You'd quickly hit unplayable framerates in action games unless you seriously knock down screen resolution, and if you do that then what's the point. :)
 
This kind of efficient FSAA functionality (usually in the form of multisampling more than supersampling) is something that's still widely present in modern 3d hardware, however, modern rendering techniques tend to do a lot of screenspace post-processing, in ways that interact with AA in such a way that you generally can't just flick a switch like you could usually do with DX7-class (from the time before pixel shaders) content.

For example, there is G-buffering, which renders a scene into several frames, with each frame containing a subset of material properties etc; it then runs a post-processing pass that combines these frames in a series of lighting calculations. These calculations are generally done once per pixel; in the case of FSAA, they must be done once per sample to get adequate results (tricks are possible here, but requires the application/engine to be explicitly coded to take advantage of them - and hardware/APIs to expose them). Also, HDR rendering seems rather common these days, and in the case of multisampling, you need to do the HDR->LDR reduction ("tone mapping", which can be rather complex process) before the multisample resolve to actually get proper antialiasing.
 
FSAA existed at a time where fillrate surplus couldn't be spent on resolution due to a largely stagnant CRT market where the average person was stuck with 17" or 19" displays capable of 1280x960 or 1600x1200 at most. I'm sure if the resolution march of modern monitors had frozen at 1080p/1440p, we would similarly see more marketing and R&D dollars spent on 'better pixels'. That's basically the boat that VR will be in for the foreseeable future as there's really no industry road map that will take us to the ~5.5", 8k or 16k panels that will be needed to match the angular PPI we get off traditional displays right now.
 
There was rotated grid supersampling supposed to work on >= DX10 Radeon and Geforce, but somewhat unofficial, limited to certain kind of games (e.g. only DX10, or was it only DX9).
I tried to follow some instructions but did not get it to work on geforce 8 / geforce 2xx.

I was disappointed. But nowadays there is "DSR" (Dynamic Super Resolution) on nvidia which is :
- ordered grid supersampling (bad)
- advanced downscaling algorithm operating on the whole picture (good)
- arbitrary scaling in fact, not a choice of 1x, 2x or 4x in the X or Y direction. The game is just rendered in a higher resolution.
Thus you can play with what might be called 2.25x ordered grid FSAA.
- works on every game (good)

AMD has it too but with weird limitations (such as it being for 1080p screens, I don't know exactly)
This is rose-colored glasses at its best. :) "T-buffer" was just regular ole supersampling, although with rotated sample grid (shifted 45 degrees off centerline), which improved AA on near-horizontal/vertical lines. where you need it the most.

Very relevant still as you needed 8x ordered grid AA to match 4x rotated grid (even then, 8x kept a weak angle)
From Radeon 9700 and Geforce 6800GT, the competition had rotated grid multisampling, but supersampling stayed ordered grid.
 
Last edited:
Very relevant still as you needed 8x ordered grid AA to match 4x rotated grid (even then, 8x kept a weak angle)
From Radeon 9700 and Geforce 6800GT, the competition had rotated grid multisampling, but supersampling stayed ordered grid.

Yes & no. Historically the T-buffer was just a sort of mid-life kicker for the M-buffer (M for MSAA) in Rampage until the latter would had been ready since its delays had been endless. 3dfx also had in mind to introduce with Rampage also a RGMS + anisotropic filtering combination or else eventually they didn't have anything different or better on their roadmap than the competition had after they were acquired. While RGSS was definitely more efficient on Voodoos than OGSS on other solutions, all of them lacked for any better filtering than garden variety trilinear. Ok the LOD offset that came with Supersampling made a minor difference to textures, but it's still a couple of miles away from 16x AF.

Supersampling lack of any other alternative back then was a one way street; today though having the opportunity with MSAA + AF combinations (or AA-hacks replacing the first) to yield for much higher resolutions, I'd rather have the second alternatives compared to SSAA any day.
 
SSAA is very brute force... It's not particularly elegant from that point of view, especially the way it magnifies rendering bottlenecks. You have a spike with lots of stuff dragging your framerate down - okay, now render all the same junk four times over for an extra large framerate drop. ;)
 
T-Buffer was actually even more heavy than standard SSAA as it was a 'proper' accumulation buffer method. (Well, they used separate buffers and instead of single high-bit buffer for accumulation.)
Meaning image was rendered into 4 buffers and then combined to final buffer, so 4x vertex performance etc. (For identical quality to 4xSSAA with good sample placement.)

Accumulation buffer methods are used in Gran Turismo photomode for DoF/motion blur and AA.
 
MSAA or bust !
And don't come talking to me with the current blurring techs that pretend to be AA !
MSAA only solves aliasing on triangle edges. Modern PBR pipelines with realistic dynamic range (1:100000+) produce specular highlights that alias heavily (GGX especially).

MSAA is not only problematic for deferred rendering, it is also problematic for tone mapping (HDR rendering) and for post processing. There are various hacks around these issues, but MSAA without trade-offs is a thing of the past. Nobody is doing pure LDR forward rendering anymore (with zero post effects).

Morphological (pure) post process AA filters (operating solely on the output image) are not the answer either, since you really need multiple samples to do proper antialiasing. Hallucinated data is not temporally stable. Image feels unstable and flickering even if a single frame would look fine alone.
 
Last edited:
My main point was that blurring is not AA. I used MSAA because it's doing the "proper" (as in theoreticaly correct) thing, like SSAA, Humus Wire AA, Shader AA, but UNLIKE any fancy blur filter, regardless of how clever it might seem.
[And of course you can't get an alias free CGI, but you can reduce it to a nice level.]
 
AMD has that officially supported SSAA one can force with 5000 series cards and later. It's rotated grid SSAA and you can use their EQAA with it, along with AF of course. You can also run their edge detect filter with it, I believe. It looks excellent. It is the best looking form of AA that is forceable, clearly superior to the DSR and VSR stuff. But it is D3D9 only AFAIK.

Some games support supersampling directly. Tomb Raider, Serious Sam 3 and Thief are examples. Serious Sam 3 uses sparse grid. Not sure what the others do. Beautiful but intensive.

I wish Alien Isolation had a SSAA option. So much specular aliasing and the post process options are not solutions. Love how sebbbi described those. DSR also barely improves it.
 
Last edited:
Back
Top