From 932874882cab24fcf130933423fb400c17e27d56 Mon Sep 17 00:00:00 2001 From: Xu Liu Date: Mon, 27 Dec 2021 18:51:06 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E6=A8=A1=E6=8B=9F?= =?UTF-8?q?=E7=8B=AC=E5=8D=A0=E5=85=A8=E5=B1=8F=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Effects/FSR_EASU_DX10.hlsl | 4 +- Magpie/MagWindow.cs | 7 ++- Magpie/MainWindow.xaml.cs | 3 +- Magpie/Options/AdvancedOptionsPage.xaml | 9 +++- Magpie/Properties/Resources.Designer.cs | 9 ++++ Magpie/Properties/Resources.resx | 9 ++-- Magpie/Properties/Resources.zh-CN.resx | 9 ++-- Magpie/Properties/Settings.Designer.cs | 12 +++++ Magpie/Properties/Settings.settings | 3 ++ Runtime/App.cpp | 10 +++- Runtime/App.h | 8 +++- Runtime/ExclModeHack.cpp | 62 +++++++++++++++++++++++++ Runtime/ExclModeHack.h | 15 ++++++ Runtime/Runtime.vcxproj | 2 + Runtime/Runtime.vcxproj.filters | 6 +++ 15 files changed, 152 insertions(+), 16 deletions(-) create mode 100644 Runtime/ExclModeHack.cpp create mode 100644 Runtime/ExclModeHack.h diff --git a/Effects/FSR_EASU_DX10.hlsl b/Effects/FSR_EASU_DX10.hlsl index 628fa0ca8..c562e8aa7 100644 --- a/Effects/FSR_EASU_DX10.hlsl +++ b/Effects/FSR_EASU_DX10.hlsl @@ -1,5 +1,5 @@ -// 适用于 DirectX 功能级别 10 的 FSR_EASU -// 比原始版本稍慢 +// 閫傜敤浜 DirectX 鍔熻兘绾у埆 10 鐨 FSR_EASU +// 姣斿師濮嬬増鏈◢鎱 //!MAGPIE EFFECT //!VERSION 1 diff --git a/Magpie/MagWindow.cs b/Magpie/MagWindow.cs index e7db0f06a..7b7b9d0d4 100644 --- a/Magpie/MagWindow.cs +++ b/Magpie/MagWindow.cs @@ -45,6 +45,7 @@ private enum FlagMasks : uint { NoCursor = 0x1, AdjustCursorSpeed = 0x2, ShowFPS = 0x4, + SimulateExclusiveFullscreen = 0x8, DisableLowLatency = 0x10, BreakpointMode = 0x20, DisableWindowResizing = 0x40, @@ -194,7 +195,8 @@ private enum FlagMasks : uint { bool disableDirectFlip, bool confineCursorIn3DGames, bool cropTitleBarOfUWP, - bool disableEffectCache + bool disableEffectCache, + bool simulateExclusiveFullscreen ) { if (Running) { Logger.Info("宸插瓨鍦ㄥ叏灞忕獥鍙o紝鍙栨秷杩涘叆鍏ㄥ睆"); @@ -230,7 +232,8 @@ bool disableEffectCache (disableDirectFlip ? (uint)FlagMasks.DisableDirectFlip : 0) | (confineCursorIn3DGames ? (uint)FlagMasks.ConfineCursorIn3DGames : 0) | (cropTitleBarOfUWP ? (uint)FlagMasks.CropTitleBarOfUWP : 0) | - (disableEffectCache ? (uint)FlagMasks.DisableEffectCache : 0); + (disableEffectCache ? (uint)FlagMasks.DisableEffectCache : 0) | + (simulateExclusiveFullscreen ? (uint)FlagMasks.SimulateExclusiveFullscreen : 0); _ = runEvent.Set(); Running = true; diff --git a/Magpie/MainWindow.xaml.cs b/Magpie/MainWindow.xaml.cs index 30e9082da..4e36b0db6 100644 --- a/Magpie/MainWindow.xaml.cs +++ b/Magpie/MainWindow.xaml.cs @@ -297,7 +297,8 @@ public partial class MainWindow : Window { Settings.Default.DisableDirectFlip, Settings.Default.ConfineCursorIn3DGames, Settings.Default.CropTitleBarOfUWP, - Settings.Default.DebugDisableEffectCache + Settings.Default.DebugDisableEffectCache, + Settings.Default.SimulateExclusiveFullscreen ); prevSrcWindow = magWindow.SrcWindow; diff --git a/Magpie/Options/AdvancedOptionsPage.xaml b/Magpie/Options/AdvancedOptionsPage.xaml index f573f07fc..0e9d970dc 100644 --- a/Magpie/Options/AdvancedOptionsPage.xaml +++ b/Magpie/Options/AdvancedOptionsPage.xaml @@ -17,8 +17,15 @@ + + -