Usar texturas OpenGL más grandes que el tamaño de la ventana/pantalla
Pregunta
Tengo problemas al usar texturas que son más grandes que la ventana OpenGL o el tamaño de visualización como objetivos de renderizado sin visualización.
¿Cuál es la solución para este problema?
Solución
Hay una solución sencilla.
Suponiendo que sus texturas (no visibles) sean 1024x1024 y estás restringido a un 256x256 escaparate.
unsigned int WIN_WIDTH = 256;
unsigned int WIN_HEIGHT = WIN_WIDTH;
unsigned int TEX_WIDTH = 1024;
unsigned int TEX_HEIGHT = TEX_WIDTH;
Utilizar el tamaño de ventana para crear su ventana OpenGL:
glutInitWindowSize(WIN_WIDTH, WIN_HEIGHT);
Pero, usa el tamaño de textura para todo lo demás:
glViewport(0, 0, TEX_WIDTH, TEX_HEIGHT);
gluOrtho2D(0.0, TEX_WIDTH, 0.0, TEX_HEIGHT);
glTexCoord2i(TEX_WIDTH, TEX_HEIGHT);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow