Ich sehe nicht, wo du deine Resize-Funktion hast. Wenn sich die Fenstergröße ändert, muss auch dein Viewport eingestellt weden.
Ich mach immer so (bei jeder Fenstergrößenänderung aufrufen):
Delphi-Quellcode:
procedure ResizeViewport(Wnd: HWND);
begin
ClientRect := GetClientRect(Wnd);
OpenGL.glViewport(0, 0, ClientRect.Right - ClientRect.Left, ClientRect.Bottom - ClientRect.Top);
OpenGL.glMatrixMode(
OpenGL.GL_PROJECTION);
OpenGL.glLoadIdentity();
OpenGL.glOrtho(0.0, VIEWPORT_WIDTH, 0.0, VIEWPORT_HEIGHT, -10.0, 10.0);
OpenGL.glMatrixMode(
OpenGL.GL_MODELVIEW);
OpenGL.glLoadIdentity();
end;
Musst eventuell noch etwas an dein Projekt anpassen aber so klappt es bei mir einwandfrei.