Bonjour,
Je fait un projet avec les librairies SDL2 et OpenGL 4.5.
Si la fenêtre est en mode Windowed ou en mode FullScreen avec la résolution de mon l'écran(1920x1080) tous va bien!
Mais quand je change la résolution en mode FullScreen rien ne va plus.
Voici un exemple de code que j'utilise: (J'ai simplifié le code pour une meilleur compréhension avec une résolution 640x480)
J'ai fait des testes et voici ce que j'obtient:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 void AppRenderer::ResizeWindows(bool isFullScreen) { if(m_isFullScreen) { SDL_DisplayMode mode; for(int i = 0; i < SDL_GetNumDisplayModes(0); ++i) { SDL_GetDisplayMode(0, i, &mode); if(mode.w == 640 && mode.h == 480 && mode.refresh_rate == 60) { break; // La résolution 640x480 a été Trouvée! } } SDL_SetWindowFullscreen(m_fenetre, SDL_WINDOW_OPENGL); SDL_SetWindowDisplayMode(m_fenetre, &mode); SDL_SetWindowFullscreen(m_fenetre, SDL_WINDOW_OPENGL | SDL_WINDOW_FULLSCREEN_DESKTOP); } else { SDL_SetWindowFullscreen(m_fenetre, SDL_WINDOW_OPENGL); SDL_SetWindowSize(m_fenetre, 640, 480); } glViewport(0, 0, 640, 480); }
Cliquer sur l'image pour l'agrandir.
On peut voir le problème en mode FullScreen avec la résolution 640x480(voir l'image).
On peut voir que le rendu de la scene est dans le coin en bas à gauche de la fenêtre. Et non au centre de la fenêtre comme il devrait être.
J'ai perdu beaucoup de temps sur internet pour trouver la réponse à mon problème(sans résultat).
J'aurais besoin de votre aide.
Savez-vous pourquoi mon code ne fonctionne pas?
Avez-vous des exemples de code fonctionnel à me donner?
Merci pour votre aide!
Partager