Здравствуйте. Появился еще такой вопрос. Использую Framebuffer'ы (glGenFrameBuffersEXT) для рисования в текстуру. К буферу присоединена текстура. При установке формата пикселя, когда создаю основной контекст воспроизведения, то задаю ему:
gluOrtho2D(-1, 1, -1, 1);
Далее - создаю и активирую Framebuffer. После этого - устанавливаю для него:
gluOrtho2D(0, Width, 0, Height);
Но такое ощущение, что gluOrtho2D задается для основного контекста. Идея в следующем: установить системы координат таким образом, чтобы для FrameBuffer'а система была задана в оконном формате, и объекты рисоваться на нем могли по своим настоящим координатам. Для основного контекста же система задавалась бы в формате OpenGL (-1..1), и при перерисовке FrameBuffer'а на экран использовалась бы такая сетка.
Признаюсь, что такой алгоритм придуман в угоду работе с шейдерами, так как, насколько я понял, они работают только с OpenGL'овской системой, но объекты, которые я рисую, имеют оконные координаты. Переводить каждую координату в OpenGL'овскую было бы долго.