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 @@
+
+
+
+
+
+
+
+
+
+
-
+