I’ve inherited a project from one of my predecessors that is using openGL as a 2D graphics drawing tool. I’m placing maps on the backs of displays, and need them to be accurate. The maps that I am placing are roughly 4096x4096 pixels, and as such, when zoomed out, are using a zoom factor of approximately 0.05 (in some cases). However, using glPixelZoom, I can set these values using GLfloats, but when I draw the map, the scale is not quite right, and performing glGet(GL_ZOOM_X) or glGet(GL_ZOOM_Y) results in the zoom being set to a multiple of 0.015625 (which for the mathematically enclined of you is 1/64). At these scales, the map is very noticable out (by some 50 miles on the map at some stages).
Is there any way that I can either change the accuracy of the glPixelZoom function to be more accurate (and stop rounding off to multiples of 1/64, or change my implementation method without having to worry about regenerating images at different resolutions or mipmapping)?
Many thanks.
PS. I’m running Irix 6.5 on an O2 machine (silicon graphics)