通过代码建立一个实际上更大的显示缓冲区

Establishing a virtually bigger display buffer through code

我不知道这是否是一个编程问题,但这是一个可以通过计算机编程解决的问题。

基于我对计算机显示处理管道如何工作的有限了解,我推测显示器上的像素被分配 space 在某处的内存缓冲区中,这个缓冲区大小取决于我们屏幕的大小.那么,我们是否可以让计算机认为我们拥有比实际拥有的更大的显示器,并利用比我们现有的更大的分辨率进行截屏?

是的,有一大块内存(可能在您的视频卡中)包含实际显示的像素,并且有一个完全独立的内存区域由桌面软件维护。后者有可能(实际上很常见)维护一个比显示器大的 "virtual" 桌面,将桌面扩展到第二个显示器,或者可能滚动或翻页以访问扩展区域。

所有这些都是非常OS特定的。

要回答您的问题,需要有关您的硬件和 OS(和驱动程序)的更多信息,因为这完全取决于此。

例如 Nvidia Dynamic Super Resolution, while AMD has Virtual Super Resolution.

两者都将为应用程序(游戏)提供比显示器上实际可用分辨率更大的可用分辨率。如何 enable/configure 这取决于您的硬件,因此您应该 Google 针对您的特定设置。

您的 OS 然后(应该)能够将其缩小以正确显示在您的显示器上,这样您就可以正确地查看屏幕。

如果您的屏幕捕获软件能够直接捕获视频内存(而不是输出到显示器的内容),它将捕获更高的分辨率。 (我没有使用屏幕捕获软件的经验,所以我不会提供太多帮助。)