Ah my apolgies, it's been a long time since I worked in immediate GL mode. The way this would be done now is by using a projection sampler in a shader. However, I believe that immediate GL had a nice friendly trick that does some magic for you. Add the following somewhere in your initialization code, before you call GL_Begin() :
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
Hopefully my memory has not failed me and this should produce your desired result.
Bookmarks