В программе OpenGL у меня есть объект Camera, который устанавливает матрицу проекции в центр спрайта. Он работал нормально, пока я не перешел в полноэкранный режим, там я заметил, что объект, на котором я сосредоточился, был в центре. После беспорядка с моим разрешением я заметил, что разрешения 4: 3 не имеют этой проблемы (я был первоначально на 1680x1050), а затем я нашел следующее.Viewport выглядит слегка вне экрана в полноэкранном режиме
1280x1024: объект по центру.
1280x960: объект центрирован.
1280x720: объект не центрирован, и весь видовой экран, кажется, сдвинулся влево. То есть, когда я перемещаю мою мышь, кажется, что она сдвигается с экрана на несколько дюймов, и справа от моего экрана есть черная область, где ничего не рисуется, и моя мышь не будет двигаться.
У кого-нибудь была такая проблема? Я на Ubuntu, если это важно.
Я использую glOrtho для создания моей перспективы. На каждой итерации камера вызывает glOrtho (objectCenter.x-80, objectCenter.x + 80, objectCenter.y-50, objectCenter.y + 50, -1, 1) (при условии представления соотношения 16:10) и каждый раз в окне меняет размер. Я вызываю glViewport (0, 0, windowWidth, windowHeight). Я что-то пропустил? – HahaHortness
Я не знаком с glOrtho (я все еще изучаю OpenGL, и я решил пойти с 3,3 ядра, поэтому glOrtho, glFrustum и т. Д. Устарели), но, прочитав документацию, похоже, что это сработает для 16:10 соотношение сторон, так что я в недоумении. Может ли быть что-то еще в стеке матриц перед glOrtho? Или что вы не в правильном режиме матрицы? –