【发布时间】:2012-02-20 06:00:10
【问题描述】:
使用 SDL 一段时间后,我发现了一个小问题。 设置全屏视频模式时:
screen = SDL_SetVideoMode(WIDTH,HEIGHT,BITDEPTH,FLAGS);
带着旗帜:
const Uint32 Graphics::FLAGS = SDL_HWSURFACE | SDL_DOUBLEBUF |SDL_FULLSCREEN;
屏幕按原样进入全屏状态。 但是当游戏结束时,显示器的分辨率会保持游戏的分辨率(在我的情况下为 800x600),而不是回到游戏前的分辨率。 无论如何我可以在代码方面解决这个问题吗?任何帮助将不胜感激。
【问题讨论】:
-
你能发布一个重现问题的小例子吗?
-
好的,给我一点时间(这个问题的项目有点大)。
-
尝试小例子时发现问题。我忘记包含 SDL_Quit(),这意味着我的程序将“干净”退出而不运行 SDL 的清理内容(例如修复分辨率)。会把它写成我自己的答案,但它不会让我等待 7 个小时。复制/粘贴,一切都是你的。感谢您的帮助!
标签: c++ graphics sdl resolution