will SLI return?

Chalnoth said:
Anisotropic filtering is more efficient at anti-aliasing of textures (by far) than supersampling.
More efficient, but less effective (by far)... and the problem is growing, rather than shrinking as MSAA fans projected years ago. Reality has proved their predictions... false at best.

Not only is alpha-test texturing becoming more and more prolific in brand new games (Battlefield2, Far Cry, Half-life2.. It's 2005 guys..) but now with the emergence of shaders (and early implementation performance limits of such), horribly aliased shaders contribute to the problem even more. So things have gotten worse, not better.

While it's agreeable the efficiency of supersampling is questionable at best, I'm sure similar arguments could have been made about z-buffer long ago.. but since then, video memory has become nearly disposable to scale, so efficiency arguments get tossed out the window due to effectivity versus impact in terms of cost.

We just haven't hit the 'impact of cost' being neglible for supersampling yet.. plain and simple. Maybe 5-10 years down the road, such efficiency speed-bumps will also be neglible in scale to hardware limitations/performance. But those attacking the effectivity of a method will be left standing around looking for the next efficiency battle vs. good, all encompassing methodology. It comes down to liberal vs. conservative views, IMO. :)
 
The question would be whether there will come better implementations of anisotropic filtering in the future or will we see filtering techniques that go beyond anisotropic when hardware gets more powerful.
 
Sharkfood said:
Chalnoth said:
Anisotropic filtering is more efficient at anti-aliasing of textures (by far) than supersampling.
More efficient, but less effective (by far)... and the problem is growing, rather than shrinking as MSAA fans projected years ago. Reality has proved their predictions... false at best.
That's far frome true. First of all, supersampling just won't solve the problems you're asking it to solve. It can't solve aliasing of alpha tested textures, for instance, for a few reasons:
1. You're never going to get supersampling to be on par with today's multisampling for edge AA, and thus the edges of alpha tested textures aren't going to get aliased as well as other edges (via normal supersampling).
2. Even this won't solve the worst problems with alpha tested textures: it will just move them further away (and not by much).

What you really need is a solution that is tailored to meet the particular problem at hand. The best-looking way to antialias alpha tested textures, for instance, is to switch to using an alpha blend instead. Unfortunately, this has the rather dramatic problem of being sort-dependent, and thus its use is typically relegated to very simple situations (mostly grass in today's games).

Similarly, there are methods to combine bump mapping with MIP Mapping to give an approximation to what could expect with a highly-supersampled, bump mapped image.

The primary problem is that what we need before shader aliasing can really be addressed by developers is for the coding of shaders to be handled solely by the programmers (not the artists). That is to say, we need robust shader libraries. Hopefully once UE3 games start shipping (if not sooner) we'll have this.
 
Chalnoth said:
That's far frome true. First of all, supersampling just won't solve the problems you're asking it to solve.
Actually, that's far from true.. you're asking for something to 'solve' something else. Unfortunately, a total solution doesn't exist and likely never will for the sake of argument.

Supersampling is much closer towards a solution by far than MSAA/AF... in fact, it actually *does* something beneficial (and damn near what some may consider acceptable AS a solution) to be compared to absolutely nothing at all.

It can't solve aliasing of alpha tested textures, for instance, for a few reasons:
Once again.. the emphasis on 'solve' versus 'lessen dramatically'...

You're never going to 'solve' edge aliasing either, so I guess we can just give up on MSAA entirely by the same logic, right? If any degree of 'improvement' is to just be truncated off and hold accountability only on some spurious 'solution'... seems same-same to me.

1. You're never going to get supersampling to be on par with today's multisampling for edge AA
Disagree.. How do you come to this conclusion? Whatever can be managed by MSAA can also be managed through SSAA. If the sample pattern, number of samples, and clever sampling tricks are implemented, the same edge AA can be achieved. Remember, all the rage 'gamma correction' is again, just an addition to the sampling algorithm.

How is, say, a nice 6-sample RGSS going to stack up against typical 6 sample MS? Any form of gamma correction can be cleverly approximated on the upscale for RGSS I'd believe. Why would this be such an impossible, not-likely-ever, kind of thing? Why are you concluding SSAA can never, ever, be of the same (or better) quality for edge AA compared to MSAA?

and thus the edges of alpha tested textures aren't going to get aliased as well as other edges (via normal supersampling).
Even if we create this mythical world where we place limitations on an SSAA method that isn't allowed for similar capabilities as MSAA, you're still trying to form a basis of:
Alpha improvement X% + Edge of improvement Y-Z% < Edge improvement Y%

It begs some massive value for Z%... where does this conclusion of a massively measurable Z% come from? (I'm asking out of interest if you can quantify your feelings on this)

.. I see it simply (and hypotheticall) as you stating:
Alpha impr. X% + Edge impr Y% < Edge impr Y%

It's saying "Well, even though alpha test aliasing is dramatically improved, we should just discount that... but only can discount it if we make an assumption that Edge AA for SS is going to somehow suffer immeasurably and ill-proportionately to improvement in alpha-test texturing"


What you really need is a solution that is tailored to meet the particular problem at hand. The best-looking way to antialias alpha tested textures, for instance, is to switch to using an alpha blend instead. Unfortunately, this has the rather dramatic problem of being sort-dependent, and thus its use is typically relegated to very simple situations (mostly grass in today's games).
Agreed.. this was the same argument 4-5 years ago. And here we stand with the Game of the Year-Style/2005 games loaded with alpha test textures.


The primary problem is that what we need before shader aliasing can really be addressed by developers is for the coding of shaders to be handled solely by the programmers (not the artists). That is to say, we need robust shader libraries. Hopefully once UE3 games start shipping (if not sooner) we'll have this.
Longer term solution... but it still cries the same foul as alpha-blend vs. alpha-test from years prior. It's just another "If only developers..." or "If only artists.." suggesting a trend no different from "If only I could win the lottery.." :)

Obviously, it's all the publisher's fault.. if they only didn't apply release pressure on 12-14 month development cycles... we'd have beautiful games released every 18-20 months. :)
 
Sharkfood said:
Supersampling is much closer towards a solution by far than MSAA/AF... in fact, it actually *does* something beneficial (and damn near what some may consider acceptable AS a solution) to be compared to absolutely nothing at all.
That's a rather silly statement. Anisotropic filtering does a whole lot to antialias color textures.

1. You're never going to get supersampling to be on par with today's multisampling for edge AA
Disagree.. How do you come to this conclusion? Whatever can be managed by MSAA can also be managed through SSAA. If the sample pattern, number of samples, and clever sampling tricks are implemented, the same edge AA can be achieved. Remember, all the rage 'gamma correction' is again, just an addition to the sampling algorithm.
Because I've tried it. MIP Mapping really tends to screw up alpha tested textures.

How is, say, a nice 6-sample RGSS going to stack up against typical 6 sample MS? Any form of gamma correction can be cleverly approximated on the upscale for RGSS I'd believe. Why would this be such an impossible, not-likely-ever, kind of thing? Why are you concluding SSAA can never, ever, be of the same (or better) quality for edge AA compared to MSAA?
Performance. Once you have hardware that can handle today's levels of MSAA at supersampling instead, you'll be able to go that much higher with multisampling.
 
Supersampling is for the time being (and most likely will continue to be) impractical due it's large fillrate/performance requirements, especially if sample densities are going to continue to increase.

Vendors will have to search for effective sollutions either through improved anisotropic algorithms or way more advanced yet equally more demanding (in terms of hardware) texture filtering algorithms IMHLO.

If we'd have an anisotropic algorithm that would effectively handle even alpha tests, there'd be much less of a need for Supersampling.

Take HL2 as an example; even jumping to 2048*1536 won't cure alpha test aliasing and even a hybrid mode with just 2xSSAA samples in a much lower resolution won't help much either (although it does get somewhat better). The sweet spot in terms of IQ would be 1024 with 4*4 SSAA; downside being that I'm stuck in between 1 and 4 fps :cry:
 
Ailuros said:
If we'd have an anisotropic algorithm that would effectively handle even alpha tests, there'd be much less of a need for Supersampling.
Well, that's not going to happen. Simple texture filtering just can't take care of this.

One thing that would be really fantastic, though, would be a system whereby the developer would, within the shader, explicitly state that filtering would be applied to variable x. This variable, then, would be recomputed at different sample positions as required (by the bilinear or anisotropic sampling, as requested...MIP mapping couldn't be handled by this directly, of course). This would be a generalization of the idea of PCF (percentage closer filtering), and would be useful in antialiasing, for example, bump mapped surfaces.

Alpha tested surfaces can be antialiased extremely well if an alpha blend is used (I'd go so far to say that this solves the aliasing problem completely). But it's not always feasible to use an alpha blend. Still, developers have started using alpha blends on some simple surfaces, so it may be the case in the near future that algorithms like Speedtree will allow for high-performance alpha blends. If developers take the time to implement it, more static geometry like fencing and whatnot are rare enough that it could be sorted for alpha blends, too. So completely anti-aliased alpha textures isn't really unattainable. It just takes a bit of developer effort.
 
Chalnoth said:
That's a rather silly statement. Anisotropic filtering does a whole lot to antialias color textures.
Where did color textures come from? You were saying it wouldn't accomplish as a 'solution' to alpha test textures. In actuality, it does have impact on these.

Because I've tried it. MIP Mapping really tends to screw up alpha tested textures.
Again, where did this come from and what does it have to do with the question?

My question was- from what basis do you make that Supersampling, in theory, is far inferior to Multisampling, in theory, as far as edge AA is concerned?

Performance. Once you have hardware that can handle today's levels of MSAA at supersampling instead, you'll be able to go that much higher with multisampling.
I guess this somewhat answers my question... I think.

Is it fair to say that you're not insinuating that, sample for sample, Supersampling is somehow inferior to multisampling... but instead the extra performance allows a higher sampling rate for the same-same performance, therefore a superior approach?

If so, fair enough. It still ignores my assertion that, in future generations, say horsepower that may be substantial enough to allow 12-16x multisampling may indeed be capable of 4x-6x supersampling with similar performance. In this case, say we're playing a game like Battlefield2- there would be no doubt in my mind which of the two methods I'd prefer to use- 4-6x supersampling simply due to the fact that a good 60% of the screen area is completely aliased (alpha-test-fest)... as can be seen here in this screenshot:
http://tinypic.com/5vzxw9
 
We'll never have "enough performance" that we won't care about wasting it on supersampling.

It is better, performance-wise, to deal with the specific cases where texture filtering and multisampling break down than to go with supersampling.

And that screenshot is a perfect example where a little bit of developer work could have prevented most of the aliasing that you see. The developers could have rendered all of that foliage with alpha blending. The alpha blending would both look and perform better than supersampling.

The really bad cases for alpha blending are ones like you see in games like UT2004, in the indoor levels. Areas with lots of grates or fences are a fair bit more challenging to render with alpha blends than foliage (hell, most games that render grass use alpha blends).
 
Chalnoth said:
We'll never have "enough performance" that we won't care about wasting it on supersampling.

It is better, performance-wise, to deal with the specific cases where texture filtering and multisampling break down than to go with supersampling.

This far I obviously agree.

And that screenshot is a perfect example where a little bit of developer work could have prevented most of the aliasing that you see. The developers could have rendered all of that foliage with alpha blending. The alpha blending would both look and perform better than supersampling.

The really bad cases for alpha blending are ones like you see in games like UT2004, in the indoor levels. Areas with lots of grates or fences are a fair bit more challenging to render with alpha blends than foliage (hell, most games that render grass use alpha blends).

If I as a user am consistently bumping into alpha tests because developer X,Y,Z didn't use alpha blends for whatever reason, then the only other choice I have is either to close one eye to alpha test aliasing (which is more feasable) or add at least a shot of SSAA via hybrid AA modes to the mix (not always feasable due to performance penalties).

Multisampling is available since the NV20 and has become much more widespread since the R300; between theory and reality there's quite a distance and albeit developers could and should minimize or get entirely rid of alpha tests wherever possible it doesn't seem to be case.

Personally I could have lived even without the tons of fences in HL2 ( if alpha blends wouldn't had been possible)..

Notice the highlighted part in the quote above? Between "could have" or "might have beens" there's another reality and an annoying one too. I'm not in any way saying that we should jump back to Supersampling; but since it seems too damn hard for developers to optimize their games with Multisampling in mind, I'm thinking whether IHVs will be called to find alternative sollutions instead.

How they'll get there is less important IMO; I'm anxious to see what exactly the alpha related setting in G70's AA algorithm exactly stands for.
 
Chalnoth said:
It is better, performance-wise, to deal with the specific cases where texture filtering and multisampling break down than to go with supersampling.
I can totally agree with this statement, but unfortunately, the reality is the accountability hasn't had any fingers spun anywhere yet.

Developers keep pumping out horribly aliased alpha-test fest games. IHV's keep pumping out MSAA/AF implementation hardware. And as time has proven, the problem keeps escalating- especially now that poorly aliased shaders are now infiltrating games to boot.

The new Crossfire-style solutions that add supersampling or mixed modes seem a good partial solution. They at least take current "inside the box" methods to attack a current problem. Of course, the real solution will be an "outside the box" look and equally clever/efficient solution. Unfortunately, the main focus of IHV's (and understandably so) has been the highest 3dmarks for reviews, even if said scores come from cheats, reductions in IQ, z buffer "optimizations" (even if they cause flicker and additional aliasing), etc.etc.
 
Not all games. UT2004 uses alpha blending (actually, it appears to use a combination of alpha blends and alpha tests). There really isn't any excuse for developers to put out games that use simple alpha tests these days.

And I can guarantee you that the extremely tiny amount of supersampling that you'll get with any of the mixed-mode AA algorithms available today or in the near future will not come close to the aliasing reduction gained from enabling alpha blends.

Now, as for shaders that are badly-aliased, IHV's definitely can take some steps to help software developers out. But there are still things that software developers will need to do about it. Hopefully the emergence of shader libraries will help this situation.
 
It's not going to save you all the time, though. I can guarantee you that the supersampling applied to the Battlefield2 scene a few posts up still won't allow the foliage to look anything near as good as a game that uses alpha blends (UT2004, Serious Sam, for example).

There is, of course, the bonus that in this case, that Supersampling that is only used on the alpha textures mirrors the multisampling sample positions. I just hope that techniques like this don't give more developers excuse enough to not worry about aliasing. Aliasing within surfaces can still be best-handled by the developer.
 
Back
Top