diff --git a/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/Enums.cs b/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/Enums.cs index bfe3541f3..4ca33a35b 100644 --- a/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/Enums.cs +++ b/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/Enums.cs @@ -151,6 +151,20 @@ public enum AudioPlaybackDevice TV = 3 } +/// +/// Available options for graphics settings that have 5 options
+/// 1x, 2x, 4x, 8x, 16x +/// Default : 8x [3] +///
+public enum AnisotropicSamplingOption +{ + x1, + x2, + x4, + x8, + x16 +} + public static class ServerName { public const string Europe = "prod_gf_eu"; diff --git a/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/FileClass/GeneralData.cs b/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/FileClass/GeneralData.cs index f2fe59451..7b2da7935 100644 --- a/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/FileClass/GeneralData.cs +++ b/CollapseLauncher/Classes/GameManagement/GameSettings/Zenless/FileClass/GeneralData.cs @@ -499,7 +499,24 @@ public QualityOption2 EnvironmentQuality .GetDataEnum(); set => _envQualityData?.SetDataEnum(value); } - + + // Key 16184 Anisotropic Sampling + private SystemSettingLocalData? _anisotropicSamplingData; + + /// + /// Sets the in-game quality settings for Anisotropic Sampling + /// + /// + + [JsonIgnore] + public AnisotropicSamplingOption AnisotropicSampling + { + get => (_anisotropicSamplingData ??= SystemSettingDataMap + .AsSystemSettingLocalData("16184", AnisotropicSamplingOption.x8)) + .GetDataEnum(); + set => _anisotropicSamplingData?.SetDataEnum(value); + } + // Key 12155 Global Illumination private SystemSettingLocalData? _envGlobalIllumination; diff --git a/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.Ext.cs b/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.Ext.cs index b4972df3f..38bba8dde 100644 --- a/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.Ext.cs +++ b/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.Ext.cs @@ -48,6 +48,7 @@ private void PresetSelector(object sender, SelectionChangedEventArgs _) ShadingQualitySelector.SelectedIndex = (int)QualityOption3.High; CharacterQualitySelector.SelectedIndex = (int)QualityOption2.High; EnvironmentQualitySelector.SelectedIndex = (int)QualityOption2.High; + AnisotropicSamplingSelector.SelectedIndex = (int)AnisotropicSamplingOption.x8; ReflectionQualitySelector.SelectedIndex = (int)QualityOption4.High; VolumetricFogSelector.SelectedIndex = (int)QualityOption4.High; HpcaSelector.SelectedIndex = (int)HiPrecisionCharaAnimOption.Dynamic; @@ -56,38 +57,40 @@ private void PresetSelector(object sender, SelectionChangedEventArgs _) MotionBlurToggle.IsChecked = true; break; case GraphicsPresetOption.Medium: - VSyncToggle.IsChecked = true; - RenderResolutionSelector.SelectedIndex = (int)RenderResOption.f10; - AntiAliasingSelector.SelectedIndex = (int)AntiAliasingOption.TAA; - GlobalIlluminationSelector.SelectedIndex = (int)QualityOption3.High; - ShadowQualitySelector.SelectedIndex = (int)QualityOption3.High; - FxQualitySelector.SelectedIndex = (int)QualityOption5.Medium; - ShadingQualitySelector.SelectedIndex = (int)QualityOption3.High; - CharacterQualitySelector.SelectedIndex = (int)QualityOption2.High; - EnvironmentQualitySelector.SelectedIndex = (int)QualityOption2.High; - ReflectionQualitySelector.SelectedIndex = (int)QualityOption4.Medium; - VolumetricFogSelector.SelectedIndex = (int)QualityOption4.Medium; - HpcaSelector.SelectedIndex = (int)HiPrecisionCharaAnimOption.Off; - BloomToggle.IsChecked = true; - DistortionToggle.IsChecked = true; - MotionBlurToggle.IsChecked = true; + VSyncToggle.IsChecked = true; + RenderResolutionSelector.SelectedIndex = (int)RenderResOption.f10; + AntiAliasingSelector.SelectedIndex = (int)AntiAliasingOption.TAA; + GlobalIlluminationSelector.SelectedIndex = (int)QualityOption3.High; + ShadowQualitySelector.SelectedIndex = (int)QualityOption3.High; + FxQualitySelector.SelectedIndex = (int)QualityOption5.Medium; + ShadingQualitySelector.SelectedIndex = (int)QualityOption3.High; + CharacterQualitySelector.SelectedIndex = (int)QualityOption2.High; + EnvironmentQualitySelector.SelectedIndex = (int)QualityOption2.High; + AnisotropicSamplingSelector.SelectedIndex = (int)AnisotropicSamplingOption.x8; + ReflectionQualitySelector.SelectedIndex = (int)QualityOption4.Medium; + VolumetricFogSelector.SelectedIndex = (int)QualityOption4.Medium; + HpcaSelector.SelectedIndex = (int)HiPrecisionCharaAnimOption.Off; + BloomToggle.IsChecked = true; + DistortionToggle.IsChecked = true; + MotionBlurToggle.IsChecked = true; break; case GraphicsPresetOption.Low: - VSyncToggle.IsChecked = true; - RenderResolutionSelector.SelectedIndex = (int)RenderResOption.f10; - AntiAliasingSelector.SelectedIndex = (int)AntiAliasingOption.TAA; - GlobalIlluminationSelector.SelectedIndex = (int)QualityOption3.Low; - ShadowQualitySelector.SelectedIndex = (int)QualityOption3.Medium; - FxQualitySelector.SelectedIndex = (int)QualityOption5.Low; - ShadingQualitySelector.SelectedIndex = (int)QualityOption3.High; - CharacterQualitySelector.SelectedIndex = (int)QualityOption2.High; - EnvironmentQualitySelector.SelectedIndex = (int)QualityOption2.High; - ReflectionQualitySelector.SelectedIndex = (int)QualityOption4.Low; - VolumetricFogSelector.SelectedIndex = (int)QualityOption4.Low; - HpcaSelector.SelectedIndex = (int)HiPrecisionCharaAnimOption.Off; - BloomToggle.IsChecked = true; - DistortionToggle.IsChecked = true; - MotionBlurToggle.IsChecked = true; + VSyncToggle.IsChecked = true; + RenderResolutionSelector.SelectedIndex = (int)RenderResOption.f10; + AntiAliasingSelector.SelectedIndex = (int)AntiAliasingOption.TAA; + GlobalIlluminationSelector.SelectedIndex = (int)QualityOption3.Low; + ShadowQualitySelector.SelectedIndex = (int)QualityOption3.Medium; + FxQualitySelector.SelectedIndex = (int)QualityOption5.Low; + ShadingQualitySelector.SelectedIndex = (int)QualityOption3.High; + CharacterQualitySelector.SelectedIndex = (int)QualityOption2.High; + EnvironmentQualitySelector.SelectedIndex = (int)QualityOption2.High; + AnisotropicSamplingSelector.SelectedIndex = (int)AnisotropicSamplingOption.x8; + ReflectionQualitySelector.SelectedIndex = (int)QualityOption4.Low; + VolumetricFogSelector.SelectedIndex = (int)QualityOption4.Low; + HpcaSelector.SelectedIndex = (int)HiPrecisionCharaAnimOption.Off; + BloomToggle.IsChecked = true; + DistortionToggle.IsChecked = true; + MotionBlurToggle.IsChecked = true; break; } @@ -562,6 +565,12 @@ public int Graphics_Environment get => (int)Settings.GeneralData.EnvironmentQuality; set => Settings.GeneralData.EnvironmentQuality = (QualityOption2)value; } + + public int Graphics_AnisotropicSampling + { + get => (int)Settings.GeneralData.AnisotropicSampling; + set => Settings.GeneralData.AnisotropicSampling = (AnisotropicSamplingOption)value; + } public int Graphics_GlobalIllumination { diff --git a/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.xaml b/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.xaml index 8408dc803..ced1e3098 100644 --- a/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.xaml +++ b/CollapseLauncher/XAMLs/MainApp/Pages/GameSettingsPages/ZenlessGameSettingsPage.xaml @@ -462,6 +462,25 @@ + + + + + + + + + + - +