gpt4 book ai didi

c++ - 适当的全屏调整窗口和 linux C++

转载 作者:太空宇宙 更新时间:2023-11-04 13:52:58 26 4
gpt4 key购买 nike

我正在为我正在编写的引擎使用 win32 API 和 x11。它是一个游戏引擎,当然它需要能够创建一个具有最佳分辨率的全屏窗口。目前,我设法在 Windows 上执行此操作,但我在其他计算机上尝试过,似乎有时窗口在显示器外开始或在显示器外结束,所以我的方法不可靠。我所做的是将分辨率更改为我之前选择的某个受支持的分辨率(所有这些都是在 C++ 中以编程方式完成的),这在我的开发计算机上运行良好,但不一定在其他计算机上运行。在我见过的许多游戏中,最佳分辨率是自动选择的。这是怎么发生的? Windows中是否有特殊功能可以选择最佳游戏分辨率?我不知道我应该如何处理这个问题。linux 也是如此,我什么都没有。有人可以告诉我如何使用 x11/xfree86 或其他东西创建全屏窗口吗?我知道标题但不知道代码。感谢您的宝贵时间。

顺便说一句,我过去常常通过获取桌面分辨率尺寸并将窗口大小调整为这些尺寸来创建全屏窗口,这种方法运行良好且可靠。然而,大多数游戏(甚至像 bf4 这样的专业游戏)总是在开始游戏之前更改分辨率。这是有原因的吗?也许是性能(缓冲区大小?)?

最佳答案

如果您谈论的是像战地风云和使命召唤等流行 PC 游戏所使用的“真正”全屏,那么您必须首先了解这些类型的游戏不仅仅使用大到足以覆盖视口(viewport)的窗口。对于“真正的”全屏,分辨率也可能会改变可用颜色的数量以满足您的需要——它实际上占据了整个视口(viewport)和屏幕,并且不与常规 Windows UI 交互。

Windows tutorial using DirectX for "real" fullscreen

Linux tutorial using OpenGL GLUT for "real" fullscreen

关于c++ - 适当的全屏调整窗口和 linux C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22769783/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com