Mithilfe von OpenGL-Texturen größer als Fenster - /display-Größe
Frage
Ich habe Probleme mit Texturen, die größer sind als die OpenGL-Fenster oder die display-Größe als nicht-display-render-targets.
Was ist die Lösung für dieses problem?
Lösung
Es gibt eine einfache Lösung.
Vorausgesetzt, Ihr (nicht-Anzeige) Texturen werden 1024x1024 und Sie sind nur auf eine 256x256 Fenster/Bildschirm.
unsigned int WIN_WIDTH = 256;
unsigned int WIN_HEIGHT = WIN_WIDTH;
unsigned int TEX_WIDTH = 1024;
unsigned int TEX_HEIGHT = TEX_WIDTH;
Verwenden Sie die Fenster Größe erstellen Sie Ihre OpenGL-Fenster:
glutInitWindowSize(WIN_WIDTH, WIN_HEIGHT);
Aber, verwenden Sie die textur-Größe für alles andere:
glViewport(0, 0, TEX_WIDTH, TEX_HEIGHT);
gluOrtho2D(0.0, TEX_WIDTH, 0.0, TEX_HEIGHT);
glTexCoord2i(TEX_WIDTH, TEX_HEIGHT);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow