[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Building the PCB+GL branch [WAS: Re: Open GL survey (for PCB)]



On Fri, 2009-02-06 at 11:48 +0100, Gabriel Paubert wrote:
> > I've not switched on anti-aliasing. I think it is important the geometry
> > has hard edges, and anti-aliasing will just increase memory
> > requirements / reduce rendering speed. (IIRC, it just renders bigger
> > than required, then filters the result down).
> 
> I believe that you are confusing anti-aliasing and multisampling. Multi-sampling
> indeed multiplies memory consumption. Simple anti-aliasing does not, if I 
> understand correctly http://www.opengl.org/sdk/docs/man/ and the blurb
> in the description of glLineWidth.

AIUI, multisampling is about the only way to have arbitrary geometry
anti-aliased in GL, due to the way the rendering pipeline works.

There have to be defined rules about which pixel a given piece of
geometry will hit, in order that the z-buffering and re-assembly of
different primitives works without any seams.

(See cairo rendering if you butt to rectangles which are off-pixel grid,
and you'll notice a seam anyway, due to the non-global anti-aliasing).


There are of course, other things in GL, such as mipmapping (a kind of
texture anti-aliasing), which are useful for avoiding true aliasing on
textures.

I'm not so convinced applying the terminology "anti-aliasing" is correct
for jaggies on object edges. Its certainly not what I'd call aliasing on
a digital oscillocope.. that matches the texture-sampling case. The
edges are more a quantization artefact, and the low-pass filter used for
"anti-aliasing" is in fact more like a reconstruction filter.


-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user