New Alpha to coverage demo

Humus

Crazy coder
Veteran
After reading this thread I decided to quickly throw together an alpha to coverage demo. It actually worked a lot better in practice than I thought it would. :)
This demo also allows you to toggle between alpha testing and alpha-to-coverage to compare the quality.

alphatocoverage.jpg


Download here as usual:
http://www.humus.ca/
 
Nice. Worst case situation that I seen had a 14fps drop (in the 190fps -R9800 Pro) when enabling alpha-to-coverage. There is, however, noticeable dithering when you close-up and the fences especially bright up quite a bit.
 
Yeah I really don't like how it looked on the fence since it effected a very large number of pixels ( since the original texture was fairly low res). Also you can see the dithering on the overhead grills at the mipmap transistions fairly strongly.

Gotta say though at reasonable flat angles it fixed up a whole bunch of aliasing problems.
 
SlmDnk said:
Fixes the aliasing but looses the transparency. GF6800 v77.72.

Seems to be working fine on 6800 Ultra with 77.72. Maybe I am not fully understanding what you mean, but both modes seem to work just fine.
 
Humus,

Well, that was fast :D Again, I must thank you for bringing some real demonstrations to everyone who may otherwise be lost in debating theoreticals back and forth. It's very much appreciated.

Two things.

1. Both modes look very smooth and clean, with one just being blurrier than the other. Is there some way we could have that "truly horrible transparency aliasing"(tm) we see in so many games to flip between? Now it just looks good whichever mode is running. It would be nice to see "bad" versus "good". (this is on ForceWare 77.72)

2. I am curious why your demos seem to be v-synced. My drivers are set to "application controlled," but in the case of many (most? all?) of your demos I must force v-sync off. Is this something you are doing or is ForceWare likely to blame? (I do have my suspicions that FW handle v-sync incorrectly at times, but it puzzles me why Nvidia would not have fixed this immediately as it absolutely kills performance, especially for benchmarks).

Again, cheers and keep up the good and interesting work.
 
The quality difference is absolutely stunning, and the performance difference is less than 10% on my Mobility 9600. I have no clue why noone ever used this featue (well, besides not being available in DirectX). This is a real must-have, and I hope ATI reacts to NVidia introducing transparency AA.
 
wireframe said:
1. Both modes look very smooth and clean, with one just being blurrier than the other. Is there some way we could have that "truly horrible transparency aliasing"(tm) we see in so many games to flip between? Now it just looks good whichever mode is running. It would be nice to see "bad" versus "good". (this is on ForceWare 77.72)
The "truly horrible transparency aliasing" that you see in some games comes from both using an alpha test and not using MIP maps. You'll notice that in this demo, if you move far enough away from the fence with the alpha test enabled, the fence disappears entirely.
 
Chalnoth said:
wireframe said:
1. Both modes look very smooth and clean, with one just being blurrier than the other. Is there some way we could have that "truly horrible transparency aliasing"(tm) we see in so many games to flip between? Now it just looks good whichever mode is running. It would be nice to see "bad" versus "good". (this is on ForceWare 77.72)
The "truly horrible transparency aliasing" that you see in some games comes from both using an alpha test and not using MIP maps. You'll notice that in this demo, if you move far enough away from the fence with the alpha test enabled, the fence disappears entirely.

Ahh yes. Now I see it. Didn't have to think outside the box, but had to move outside the box to see that one. :D

So that is what we need. No MIP-maps and alpha-test so we can gorge ourselves in "truly horrible transparency aliasing" and "the solution".

I am really not understanding why people are reporting wonderful results. The difference is hardly noticeable to me unless I put my nose up to the fencing and then the alpha-test looks better.
 
Right, in these days with anisotropic filtering the disappearance of the fence is much less obvious. Try turning anisotropic filtering off and look at the fences at high angles in both modes. There's a pretty dramatic difference. If you're wondering if this is a bad thing to do, well, just bear in mind that some games have vastly larger draw distances than this little demo, and there are other situations in-game that take on rather different aliasing characteristics as well.

Btw, Humus, it might be nice to add a mode with alpha blending. I know it'd be a hassle to add in the sorting, so just render the fences last and leave a note that with sorting, the fences won't disappear behind one another (though the sorting wouldn't be that hard: just have pre-defined sectors with a different rendering order in each sector).
 
wireframe said:
I am really not understanding why people are reporting wonderful results. The difference is hardly noticeable to me unless I put my nose up to the fencing and then the alpha-test looks better.
Really? I think this is night and day...
at.png
atc.png
 
the difference should be very obvious IMO.

With alpha test if you are not really close to the fences the lines are almost gone while with alpha to coverage you see every fence line clearly
 
wireframe said:
SlmDnk said:
Fixes the aliasing but looses the transparency. GF6800 v77.72.

Seems to be working fine on 6800 Ultra with 77.72. Maybe I am not fully understanding what you mean, but both modes seem to work just fine.
Just noticed... I got AA off from the control panel. Sorry, my bad... :D
 
nice program, I didn't see any change in the framerate and it does give a good leap in IQ, but if current cards can do this, why is it such a big deal for the 7800, does it do it in hardware?
 
pegisys said:
nice program, I didn't see any change in the framerate and it does give a good leap in IQ, but if current cards can do this, why is it such a big deal for the 7800, does it do it in hardware?
Well, no, it's that no game currently available makes use of alpha coverage. The difference is that the 7800 allows it to be forced (though I feel they should change the algorithm to be more like the one that Humus presents in this demo).
 
Back
Top