A general-purpose window upscaler for Windows 10/11.
  • HLSL 91.6%
  • C++ 8.1%
  • C 0.2%
Find a file
2022-01-01 21:35:42 +08:00
.github Merge branch 'dev' 2021-12-28 16:10:59 +08:00
CONAN_INSTALL merge: 合并 release/v0.7 2021-11-21 10:59:31 +08:00
DEPLOY chore: 部署时支持打包 .NET 运行时 2021-11-19 10:17:56 +08:00
docs docs: 更新文档 2021-12-28 16:25:23 +08:00
Effects chore: 迁移到 C++20 2022-01-01 21:35:42 +08:00
img docs: 更新主窗口截图 2021-12-30 19:26:27 +08:00
Magpie feat: 添加“显示调试选项”的选项 2021-12-27 19:32:46 +08:00
Runtime chore: 迁移到 C++20 2022-01-01 21:35:42 +08:00
tools feat: 移植 NVSharpen 2021-11-28 20:40:59 +08:00
.all-contributorsrc docs: 更新 README 2021-12-01 13:27:44 +08:00
.editorconfig chore: 微小优化 2021-08-03 19:45:38 +08:00
.gitattributes 添加 .gitignore 和 .gitattributes。 2021-02-20 21:20:07 +08:00
.gitignore feat: 支持关闭垂直同步 2021-10-02 19:52:02 +08:00
CONTRIBUTING.md Update CONTRIBUTING.md 2021-12-22 10:28:15 +08:00
LICENSE RELICENSE: 许可变更为GPLv3 2021-07-25 14:56:08 +08:00
Magpie.sln chore: 修复编译 2021-11-19 18:36:57 +08:00
README.md docs: 更新 README 2021-12-29 18:10:09 +08:00

MAGPIE

build All Contributors 许可

Magpie 可以将任意窗口放大至全屏,内置大量缩放算法/滤镜。主要用于游戏窗口的放大显示,适用于不支持全屏模式,或者内置的全屏模式会使画面模糊的情况。

使用中遇到问题请提交 issue。

👉 编译指南

👉 FAQ

👉 自定义缩放配置示例

👉 贡献指南

使用方法

窗口截图

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

以下为配置说明:

缩放模式

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

  1. Lanczos常见的传统插值算法善于保留锐利的边缘。
  2. FSRFidelityFX-FSR 的移植,适合缩放 3D 游戏。
  3. FSRCNNXFSRCNNX 的移植。
  4. ACNetACNetGLSL的移植。适合动画风格的图像和视频放大。
  5. Anime4KAnime4K 的移植。此预置使用 Anime4K_Upscale_Denoise_L 变体。
  6. RAVUAbout RAVU
  7. CRT-Geom最流行的 CRT 滤镜之一,推荐自行配置参数。见 Emulation General Wiki
  8. Integer Scale将每个像素放大整数倍可以完整保留原图像的视觉效果。预置了2x和3x两种放大倍率。

捕获模式

指示程序如何捕获源窗口图像,它们的适用场景见捕获模式对比

  1. Graphics Capture使用 Screen Capture API 捕获窗口,最推荐的方法。此 API 从 Win10 v1903 开始提供。
  2. Desktop Duplication使用 Desktop Duplication API 捕获窗口,相比 Graphics Capture 可以捕获到更多类型的窗口。此 API 从 Win10 v2004 开始提供。
  3. GDI使用 GDI 捕获源窗口。和 Graphics Capture 相比 CPU 占用更少。
  4. DwmSharedSurface使用未公开的 DwmSharedSurface API 捕获窗口。

热键修改

程序使用 globalmousekeyhook 检测热键。

手动输入键值修改为你喜欢的键位(多个键位组合之间用 + 连接)

  1. 字母使用大写,如 A ;数字使用特殊格式,如 D1 (小键盘数字则为 NumPad1
  2. 功能键的单词首字母大写,如 Capital (不能写 Caps F1 PageUp
  3. 个别键位不能作为单独的触发热键,必须与其它键位组合使用,如 Control Shift Alt
  4. 组合键按照前后顺序按下才能正确触发,如 B+C 先按住b不松手而后再按下c

系统需求

  1. Windows 10/11
  2. DirectX 功能级别 10
  3. .NET 6 Desktop 运行时
  4. MSVC 2015-2022 运行时

使用提示

  1. 如果你设置了 DPI 缩放,而要放大的窗口没有高 DPI 支持,推荐首先进入该程序的兼容性设置,将“高 DPI 缩放替代”设置为“应用程序”。

    高DPI设置

  2. 一些游戏支持调整窗口的大小,但只使用简单的缩放算法,这时请先将其设为原始(最佳)分辨率。

贡献者

感谢每一位贡献者,你们使 Magpie 变得更好(emoji key


刘旭

🚧 💻 👀 📖 💬

hooke007

📖 💬 📓 💻

Pal Lockheart

📓

Steve Donaghy

💻 🌍

gyro永不抽风

💻

ButtERRbrod

🌍

本项目遵循 all-contributors 规范。欢迎任何形式的贡献!