I am drawing a face as a set of triangles,
and glEnable(GL_POLYGON_SMOOTH) seems to do
a good job of reducing aliasing effects
between regions, except now there are black
lines at the triangle boundaries. Anybody
know how I can get rid of them?



that might work, of course it might also kill your frame rate

Do you have anti-aliasing turned on?

I have had this problem drawing EXTREMELY large polygons with AA turned on - in which case turn it off!

In my case this was a driver issue is some ways - but not the fault of the drivers - I think it’s to do with the fact that when sending double precision polys to the driver, there is enevitably some rounding of the vertices - make sure you are using floats

Actually, the frame rate is already pretty
dismal, because I don’t have any hardware
acceleration. glEnable(GL_LINE_SMOOTH)
doesn’t seem to have any effect.

Anti-aliasing is turned on, but the polygons
aren’t huge.


In order for GL_POLYGON_SMOOTH to do what you want (ie, antialias polygon edges) correctly, you have to sort every polygon in depth order as though it were transparent. That is, each polygon must be drawn back-to-front, and you must use alpha blending.

That, and the lack of hardware acceleration, is why nobody uses GL_POLYGON_SMOOTH.