SDL 未跨多个显示器传播
我的游戏使用 SDL 创建全屏 OpenGL 窗口。
然而,对于那些拥有多个显示器的用户,我得到的结果非常复杂。
通常游戏会出现在两个屏幕上,这绝对是错误的,尤其是在显示器尺寸不同的情况下。
但是,SDL_ListModes()
并没有让我清楚在多显示器场景中全屏应用程序的真正分辨率选择是什么。虚拟屏幕始终会列出,并且与物理屏幕无法区分。
如何使用 SDL 列出可用的物理显示器,以及如何在它们上创建全屏窗口?
My game uses SDL to create a fullscreen OpenGL window.
However, for those users with multiple monitors I get very mixed results.
Often the game appears spread across both screens, which is decidedly wrong especially if the monitors are different sizes.
However, SDL_ListModes()
is not making it obvious to me what the real resolution choices are for full-screening an app in a multiple monitor scenario. Always the virtual screens are listed, and are indistinguishable from the physical screens.
How can you use SDL to list the available physical displays, and how do you create full-screen windows on them?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您无法让 SDL 1.2 自动执行正确的操作,您可以让用户在配置文件中或通过命令行指定窗口位置。
然后,您应该能够在初始化 SDL 之前通过 SDL_VIDEO_WINDOW_POS 设置窗口位置。
If you can't get SDL 1.2 to do the right thing automatically you could let the user specify the window position in a config file or via the command line.
Then you should be able to set the window position via SDL_VIDEO_WINDOW_POS before you init SDL.