在 Mac OS X 中在全屏和窗口之间切换
我正在开发一个使用 OpenGL 和 SDL 的项目。用户可以选择使用全屏或窗口模式进行显示。
我使用 SDL_SetVideoMode
设置窗口,但此解决方案破坏了原始 SDL_Surface
上下文(因此我的所有 OpenGL 纹理也被清理)。
如何在不清理纹理的情况下正确地在全屏和窗口模式之间切换?
I have a project in the works with OpenGL and SDL. Users have the option of using a full-screen or windowed mode for the display.
I use SDL_SetVideoMode
to set up the window, but this solution destroys the original SDL_Surface
context (so all my OpenGL textures get cleaned too).
How can I correctly switch between full-screen and windowed mode without textures cleaning?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不幸的是,您需要重新加载所有纹理。这是必要的,因为 SDL 会重新创建上下文。这是一个 SDL 问题,计划有一天得到修复。
更多信息此处。
You need to reload all your textures unfortunately. This is neccesary because SDL recreates the context. It's an SDL issue that is planned to be fixed someday.
More info here.