You could just append a glScale() after the glOrtho().
glOrtho() essentially subtracts the maximum and minimum values in each dimension to determine the scale. If you’re constructing the values as centre-size and centre+size, then you’ll lose accuracy when size is small compared to centre. In that case, it would be better to just construct the projection matrix using glTranslate() and glScale() (or even just glLoadMatrix()).
[QUOTE=GClements;1280678]You could just append a glScale() after the glOrtho().
glOrtho() essentially subtracts the maximum and minimum values in each dimension to determine the scale. If you’re constructing the values as centre-size and centre+size, then you’ll lose accuracy when size is small compared to centre. In that case, it would be better to just construct the projection matrix using glTranslate() and glScale() (or even just glLoadMatrix()).[/QUOTE]