summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2013-09-22 09:25:38 -0500
committerRyan Houdek <Sonicadvance1@gmail.com>2013-09-22 09:25:38 -0500
commit81effb80993c3f64e368f4e9fdd551e60ce2f8c0 (patch)
treeb18079d5ba8cfe5c4aa94ecd437f0edc9fc21a16 /Source
parent91619e28b85d513d0676accf3c785e10c31cb1b8 (diff)
[Android] Add in FSAA option.
Diffstat (limited to 'Source')
-rw-r--r--Source/Android/res/values/arrays.xml14
-rw-r--r--Source/Android/res/values/strings.xml2
-rw-r--r--Source/Android/res/xml/video_prefs.xml7
-rw-r--r--Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java5
4 files changed, 27 insertions, 1 deletions
diff --git a/Source/Android/res/values/arrays.xml b/Source/Android/res/values/arrays.xml
index 2144440a33..8e75554384 100644
--- a/Source/Android/res/values/arrays.xml
+++ b/Source/Android/res/values/arrays.xml
@@ -108,7 +108,19 @@
<item>6</item>
<item>7</item>
</string-array>
-
+
+ <!-- FSAA Preference -->
+ <string-array name="FSAAEntries" translatable="false">
+ <item>1x</item>
+ <item>2x</item>
+ <item>4x</item>
+ </string-array>
+ <string-array name="FSAAValues" translatable="false">
+ <item>0</item>
+ <item>1</item>
+ <item>2</item>
+ </string-array>
+
<!-- Anisotropic Filtering Preference -->
<string-array name="anisotropicFilteringEntries" translatable="false">
<item>1x</item>
diff --git a/Source/Android/res/values/strings.xml b/Source/Android/res/values/strings.xml
index 5c8a1269af..8c99835d1f 100644
--- a/Source/Android/res/values/strings.xml
+++ b/Source/Android/res/values/strings.xml
@@ -86,6 +86,8 @@
<string name="enhancements">Enhancements</string>
<string name="internal_resolution">Internal Resolution</string>
<string name="internal_resolution_descrip">Specifies the resolution used to render at. A high resolution will improve visual quality a lot but is also quite heavy on performance and might cause glitches in certain games.</string>
+ <string name="FSAA">Fullscreen antialiasing</string>
+ <string name="FSAA_descrip">Reduces the amount of aliasing caused by rasterizing 3D graphics. This makes the rendered picture look less blocky. Heavily decreases emulation speed and sometimes causes issues.</string>
<string name="anisotropic_filtering">Anisotropic Filtering</string>
<string name="anisotropic_filtering_descrip">Enhances visual quality of textures that are at oblique viewing angles. Might cause issues in a small number of games.</string>
<string name="scaled_efb_copy">Scaled EFB Copy</string>
diff --git a/Source/Android/res/xml/video_prefs.xml b/Source/Android/res/xml/video_prefs.xml
index 311c6ce8a9..72a50c4f3a 100644
--- a/Source/Android/res/xml/video_prefs.xml
+++ b/Source/Android/res/xml/video_prefs.xml
@@ -14,6 +14,13 @@
android:summary="@string/internal_resolution_descrip"
android:title="@string/internal_resolution"/>
+ <ListPreference
+ android:entries="@array/FSAAEntries"
+ android:entryValues="@array/FSAAValues"
+ android:key="FSAA"
+ android:summary="@string/FSAA_descrip"
+ android:title="@string/FSAA"/>
+
<ListPreference
android:entries="@array/anisotropicFilteringEntries"
android:entryValues="@array/anisotropicFilteringValues"
diff --git a/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java b/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java
index 93fc9cf890..eadd95bde4 100644
--- a/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java
+++ b/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java
@@ -43,6 +43,7 @@ public final class UserPreferences
editor.putBoolean("drawOnscreenControls", getConfig("Dolphin.ini", "Android", "ScreenControls", "True").equals("True"));
editor.putString("internalResolution", getConfig("gfx_opengl.ini", "Settings", "EFBScale", "2") );
+ editor.putString("FSAA", getConfig("gfx_opengl.ini", "Settings", "MSAA", "0"));
editor.putString("anisotropicFiltering", getConfig("gfx_opengl.ini", "Enhancements", "MaxAnisotropy", "0"));
editor.putBoolean("scaledEFBCopy", getConfig("gfx_opengl.ini", "Hacks", "EFBScaleCopy", "True").equals("True"));
editor.putBoolean("perPixelLighting", getConfig("gfx_opengl.ini", "Settings", "EnablePixelLighting", "False").equals("True"));
@@ -158,6 +159,9 @@ public final class UserPreferences
// Internal resolution. Falls back to 1x Native upon error.
String internalResolution = prefs.getString("internalResolution", "2");
+ // FSAA Level. Falls back to 1x upon error.
+ String FSAALevel = prefs.getString("FSAA", "0");
+
// Anisotropic Filtering Level. Falls back to 1x upon error.
String anisotropicFiltLevel = prefs.getString("anisotropicFiltering", "0");
@@ -236,6 +240,7 @@ public final class UserPreferences
//-- Enhancement Settings --//
NativeLibrary.SetConfig("gfx_opengl.ini", "Settings", "EFBScale", internalResolution);
+ NativeLibrary.SetConfig("gfx_opengl.ini", "Settings", "MSAA", FSAALevel);
NativeLibrary.SetConfig("gfx_opengl.ini", "Enhancements", "MaxAnisotropy", anisotropicFiltLevel);
NativeLibrary.SetConfig("gfx_opengl.ini", "Hacks", "EFBScaledCopy", usingScaledEFBCopy ? "True" : "False");
NativeLibrary.SetConfig("gfx_opengl.ini", "Settings", "EnablePixelLighting", usingPerPixelLighting ? "True" : "False");