Как заполнить экран прямоугольником в ортогональном режиме OpenGL? - PullRequest
1 голос
/ 21 декабря 2010

У меня есть одна текстура 640x480, которая должна заполнить экран.Пока что я могу заставить его работать с квадратной текстурой, но не с прямоугольной.

glViewport(0, 0, display->w, display->h);

glMatrixMode(GL_PROJECTION);
glLoadIdentity();

double aspectRatio = (double)display->w / (double)display->h;

if (display->w <= display->h)
    glOrtho(-1, 1, -1 / aspectRatio, 1 / aspectRatio, -1, 1);
else
    glOrtho(-1 * aspectRatio, 1 * aspectRatio, -1, 1, -1, 1);

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();

Какие изменения мне нужно сделать, чтобы она уместилась на любой текстуре на экране, независимо от ее аспектасоотношение?

1 Ответ

0 голосов
/ 21 декабря 2010

Это может иметь какое-то отношение.

Плиточный файл bmp текстуры в качестве текстуры на прямоугольник в OpenGL?

Возможно, вы захотите рассмотреть текстуру прямоугольника расширения ARB какальтернативный подход к (предполагая glTexImage2D?) http://glprogramming.com/red/chapter09.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...