GL_POLYGON_SMOOTH was only a good solution for certain types of scenes. There are alternate ways to antialias but they all have tradeoffs, so you'll have to describe what you're trying to do if you want a good answer.

but what if he wants to to be crisp and smooth on those brand new 4096 x 3072 displays that better be coming out soon?

Skorche is right though for most applications. If your point is to draw a circle that looks pretty, the choices are GLprimitives or a texture. Texture will allow a crisper bitmapped look (while ultimately letting you to add animation and other effects).

Alternatively, for a circle, I recommend not using polygon and instead use triangle strip or triangle fan.

And lastly: I recommend you don't even bother at all. In learning game programming, the knowledge of graphics will come in time, but I wouldn't bother with the "making it pretty" until you can "make it work".

Not saying you shouldn't ask these questions, but they will not get you as far as others you should be asking.

(Aug 13, 2010 05:47 PM)skyhawk Wrote: but what if he wants to to be crisp and smooth on those brand new 4096 x 3072 displays that better be coming out soon?

It might seem a bit silly, but it's not like a 1024x1024 texture takes up that much VRAM if you really wanted a big circle. You can also effectively double the resolution by splitting it into 4 quads putting a 1/4 pie shaped piece into the texture.

You could also probably write a shader to make an AA circle. I've seen a couple GLSL examples that used the screenspace partial derivatives and smoothstep function to anti-alias. Not sure how widely supported the parts to do that in hardware is though.