Blinue-Magpie 使游戏窗口全屏显示的工具开源项目

我要开发同款
匿名用户2021年08月05日
53阅读
开发技术C/C++
所属分类游戏/娱乐、游戏模拟器/工具/引擎
授权协议GPLv3

作品详情

Magpie可以将任意窗口放大至全屏,支持多种高级缩放算法,包括Lanczos、Anime4K、FSR、FSRCNNX 等。主要用于游戏窗口的放大显示,适用于不支持全屏模式,或者内置的全屏模式会使画面模糊的情况。

要放大的窗口位于前台时,按下热键即可全屏显示该窗口,再次按下热键或者切换前台窗口将退出全屏。

以下为配置说明:

缩放模式

程序预置了多种缩放模式,如果它们不符合你的需求,请自定义缩放。

Lanczos:常见的传统插值算法,善于保留锐利的边缘;RAVU:见 AboutRAVU。此预置使用zoom变体;FSRCNNX:FSRCNN的变体。在各种场合表现优秀;ACNet:ACNetGLSL 的移植。适合动画风格的图像和视频放大;Anime4K:开源的高质量的实时动漫缩放/降噪算法;FSR:适用于3D游戏;像素:将每个像素放大整数倍,可以完整保留原图像的视觉效果。预置了2x和3x两种放大倍率;抓取模式

指示程序如何抓取源窗口图像

WinRTCapture:使用 ScreenCaptureAPI 抓取窗口,最推荐的方法。此API从Windows10,v1803开始提供。GDI:使用GDI抓取源窗口,速度稍慢。注入模式

如果源窗口使用了自定义光标,屏幕上可能出现两个光标。为了解决这个问题,Magpie提供了进程注入的功能:

不使用注入:适用于源窗口没有自定义光标的场合运行时注入:在执行缩放的同时注入源窗口线程,退出全屏后取消注入启动时注入:适用于运行时注入不起作用的场合,不能注入正在运行的进程,需要手动选择要启动并注入的程序。高级选项显示帧率:在屏幕左上角显示当前帧率实现原理

因为实现原理的不同,Magpie比 LosslessScaling 和 IntegerScaler 强大的多。Magpie的原理非常简单:使用一个全屏窗口覆盖屏幕,捕获原窗口的内容放大后在该全屏窗口显示出来。这种方式使得缩放算法不受任何限制,让我们可以自由使用现存的优秀缩放算法。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论