On Mon, 2005-03-07 at 00:45 -0500, Daniel Phillips wrote: > On Saturday 05 March 2005 17:43, Lourens Veen wrote: > > Just a short question though, knowing next to nothing about this. How > > does the blending at the edges work theoretically? Alpha blending > > gives problems with continuity I'd think. Let's say we render two > > adjacent white polygons on a black background, and we render them one > > at a time. If we blend the edge pixels with the background then a > > pixel that is cut right through the middle will be 75% white instead > > of 100%. And if you render the same polygon twice then it will be 75% > > white instead of 50%. How do you prevent that? > > That is a pretty good illustration of algorithms based on blending into > a partially constructed image don't work very well. None of the three > algorithms I described do this.
For 2d antialiasing you can use front-to-back drawing using smooth polygons, i.e. alpha values that represent coverage, and use GL_SRC_ALPHA_SATURATE/GL_ONE for the src/dst blending functions. > > The simple 2x2 supersampling approach does not have this problem, but > > how does this work for multisampling? > > The color value for each subsample is stored separately and only mixed > with other subsamples in final scanout. Multisampling is the standard OpenGL way---apart from using a multipass algorithm using the accumulation buffer---of handling antialiasing for the general 3d case. > > The reason I'm asking is that I'm wondering whether we can't cheat, > > and do something that gives somewhat better results than 2x2 > > antialiasing. > > If you find a way, be sure to shout! For 2d drawing the OpenGL smooth polygons will give much better results. > > I'm afraid that 2x2 won't be fast enough, and it won't > > be pretty enough either, making the entire thing a bit useless. Which > > is an opinion based on nothing, so I'd be happy to hear > > counterarguments :). > > Here is a counterargument: > > http://www.ixbt.com/video/images/geforce3/aa2x2.jpg > > Looks pretty, hmm? 2x2 may be quite acceptable for realtime 3d graphics, but not good enough for (high quality) 2d drawing, e.g. vector graphics for SVG rendering. --ms _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
