aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Headless.SDL2/Options.cs
diff options
context:
space:
mode:
authorTheun de Bruijn <theun@theundebruijn.com>2023-09-26 07:40:16 +1000
committerGitHub <noreply@github.com>2023-09-25 23:40:16 +0200
commiteca8808649b7d763dd6b528bd26d43b7bd839cd2 (patch)
tree24d110eea8e3cdf3158a7c54400e11168cc5c649 /src/Ryujinx.Headless.SDL2/Options.cs
parentf6c3f1cdfdb9145634be3bfc54400f0d408f36dd (diff)
Headless: Add support for Scaling Filters, Anti-aliasing and Exclusive Fullscreen (#5412)1.1.1025
* Headless: Added support for fullscreen option * Headless: cleanup of fullscreen support * Headless: fullscreen support : implemented proposed changes * Headless: fullscreen support: cleanup * Headless: exclusive fullscreen support: wip * Headless: exclusive fullscreen support: add. windows scale interop * Headless: exclusive fullscreen support: cleanup * Headless: exclusive fullscreen support: cleanup * Headless: fullscreen support: fix for OpenGL scaling * Headless: fullscreen support: cleanup * Headless: fullscreen support: cleanup * Headless: fullscreen support: add. Vulkan fix * Headless: fullscreen support: add. macOS fullscreen fix * Headless: fullscreen support: cleanup * Headless: fullscreen support: cleanup * Headless: fullscreen support: cleanup * Headless: exclusive fullscreen support: add. display selection logic * Headless: exclusive fullscreen support: add. anti-aliasing + scaling-filter logic * Headless: exclusive fullscreen support: upd. options to be case-insensitive * Headless: exclusive fullscreen support: force default values for scaling + anti-aliasing options * Headless: upd. OpenGL --fullscreen window size logic * Headless: upd. fullscreen logic * Headless: cleanup * Headless: refac. DisplayId option naming * Headless: refac. scaling + anti-aliasing option handling * Headless: refac. namespace handling * Headless: upd. imports ordering * Apply suggestions from code review Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com> --------- Co-authored-by: Ac_K <Acoustik666@gmail.com> Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>
Diffstat (limited to 'src/Ryujinx.Headless.SDL2/Options.cs')
-rw-r--r--src/Ryujinx.Headless.SDL2/Options.cs23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/Ryujinx.Headless.SDL2/Options.cs b/src/Ryujinx.Headless.SDL2/Options.cs
index e44cedec..a1adcd02 100644
--- a/src/Ryujinx.Headless.SDL2/Options.cs
+++ b/src/Ryujinx.Headless.SDL2/Options.cs
@@ -14,9 +14,21 @@ namespace Ryujinx.Headless.SDL2
[Option("profile", Required = false, HelpText = "Set the user profile to launch the game with.")]
public string UserProfile { get; set; }
- [Option("fullscreen", Required = false, HelpText = "Launch the game in fullscreen mode.")]
+ [Option("display-id", Required = false, Default = 0, HelpText = "Set the display to use - especially helpful for fullscreen mode. [0-n]")]
+ public int DisplayId { get; set; }
+
+ [Option("fullscreen", Required = false, Default = false, HelpText = "Launch the game in fullscreen mode.")]
public bool IsFullscreen { get; set; }
+ [Option("exclusive-fullscreen", Required = false, Default = false, HelpText = "Launch the game in exclusive fullscreen mode.")]
+ public bool IsExclusiveFullscreen { get; set; }
+
+ [Option("exclusive-fullscreen-width", Required = false, Default = 1920, HelpText = "Set horizontal resolution for exclusive fullscreen mode.")]
+ public int ExclusiveFullscreenWidth { get; set; }
+
+ [Option("exclusive-fullscreen-height", Required = false, Default = 1080, HelpText = "Set vertical resolution for exclusive fullscreen mode.")]
+ public int ExclusiveFullscreenHeight { get; set; }
+
// Input
[Option("input-profile-1", Required = false, HelpText = "Set the input profile in use for Player 1.")]
@@ -196,6 +208,15 @@ namespace Ryujinx.Headless.SDL2
[Option("preferred-gpu-vendor", Required = false, Default = "", HelpText = "When using the Vulkan backend, prefer using the GPU from the specified vendor.")]
public string PreferredGPUVendor { get; set; }
+ [Option("anti-aliasing", Required = false, Default = AntiAliasing.None, HelpText = "Set the type of anti aliasing being used. [None|Fxaa|SmaaLow|SmaaMedium|SmaaHigh|SmaaUltra]")]
+ public AntiAliasing AntiAliasing { get; set; }
+
+ [Option("scaling-filter", Required = false, Default = ScalingFilter.Bilinear, HelpText = "Set the scaling filter. [Bilinear|Nearest|Fsr]")]
+ public ScalingFilter ScalingFilter { get; set; }
+
+ [Option("scaling-filter-level", Required = false, Default = 0, HelpText = "Set the scaling filter intensity (currently only applies to FSR). [0-100]")]
+ public int ScalingFilterLevel { get; set; }
+
// Hacks
[Option("expand-ram", Required = false, Default = false, HelpText = "Expands the RAM amount on the emulated system from 4GiB to 6GiB.")]