Использование текстур OpenGL больше, чем размер окна / дисплея

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

18.08.2008 08:09:10
1 ОТВЕТ
РЕШЕНИЕ

Там простое решение.

Предполагая, что ваши (не отображаемые) текстуры имеют размер 1024x1024, и вы ограничены окном / дисплеем 256x256 .

unsigned int WIN_WIDTH = 256;
unsigned int WIN_HEIGHT = WIN_WIDTH;
unsigned int TEX_WIDTH = 1024;
unsigned int TEX_HEIGHT = TEX_WIDTH;

Используйте размер окна, чтобы создать окно OpenGL:

glutInitWindowSize(WIN_WIDTH, WIN_HEIGHT);

Но используйте размер текстуры для всего остального:

glViewport(0, 0, TEX_WIDTH, TEX_HEIGHT);
gluOrtho2D(0.0, TEX_WIDTH, 0.0, TEX_HEIGHT);
glTexCoord2i(TEX_WIDTH, TEX_HEIGHT);
4
18.08.2008 08:09:23