diff --git a/src/android/app/src/main/java/org/citra/citra_emu/features/settings/model/BooleanSetting.kt b/src/android/app/src/main/java/org/citra/citra_emu/features/settings/model/BooleanSetting.kt
index 997e30a30..3f6a14480 100644
--- a/src/android/app/src/main/java/org/citra/citra_emu/features/settings/model/BooleanSetting.kt
+++ b/src/android/app/src/main/java/org/citra/citra_emu/features/settings/model/BooleanSetting.kt
@@ -42,6 +42,7 @@ enum class BooleanSetting(
ENABLE_REALTIME_AUDIO("enable_realtime_audio", Settings.SECTION_AUDIO, false),
CPU_JIT("use_cpu_jit", Settings.SECTION_CORE, true),
HW_SHADER("use_hw_shader", Settings.SECTION_RENDERER, true),
+ SHADER_JIT("use_shader_jit", Settings.SECTION_RENDERER, true),
VSYNC("use_vsync_new", Settings.SECTION_RENDERER, true),
USE_FRAME_LIMIT("use_frame_limit", Settings.SECTION_RENDERER, true),
DEBUG_RENDERER("renderer_debug", Settings.SECTION_DEBUG, false),
diff --git a/src/android/app/src/main/java/org/citra/citra_emu/features/settings/ui/SettingsFragmentPresenter.kt b/src/android/app/src/main/java/org/citra/citra_emu/features/settings/ui/SettingsFragmentPresenter.kt
index 70b896e92..d82e30acd 100644
--- a/src/android/app/src/main/java/org/citra/citra_emu/features/settings/ui/SettingsFragmentPresenter.kt
+++ b/src/android/app/src/main/java/org/citra/citra_emu/features/settings/ui/SettingsFragmentPresenter.kt
@@ -1596,6 +1596,15 @@ class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView)
BooleanSetting.HW_SHADER.defaultValue
)
)
+ add(
+ SwitchSetting(
+ BooleanSetting.SHADER_JIT,
+ R.string.shader_jit,
+ R.string.shader_jit_description,
+ BooleanSetting.SHADER_JIT.key,
+ BooleanSetting.SHADER_JIT.defaultValue
+ )
+ )
add(
SwitchSetting(
BooleanSetting.VSYNC,
diff --git a/src/android/app/src/main/res/values/strings.xml b/src/android/app/src/main/res/values/strings.xml
index a1deb0e2f..e1d1d2a95 100644
--- a/src/android/app/src/main/res/values/strings.xml
+++ b/src/android/app/src/main/res/values/strings.xml
@@ -233,6 +233,8 @@
Graphics API
Enable SPIR-V shader generation
Emits the fragment shader used to emulate PICA using SPIR-V instead of GLSL
+ Disable SPIR-V Optimizer
+ Disables the SPIR-V optimization pass, reducing stuttering considerably while barely affecting performance.
Enable asynchronous shader compilation
Compiles shaders in the background to reduce stuttering during gameplay. When enabled expect temporary graphical glitches
Linear Filtering
@@ -324,8 +326,10 @@
Makes async operations deterministic for debugging. Enabling this may cause freezes.
Enable RPC Server
Enables the RPC server on port 45987. This allows remotely reading/writing guest memory.
+ Enable Shader JIT
+ Use the JIT engine instead of the interpreter for software shader emulation.
-
+
Screen Orientation
Automatic
Landscape
@@ -870,7 +874,5 @@
Quickload
Quicksave - %1$tF %1$tR
No Quicksave available.
- Disable SPIR-V Optimizer
- Disables the SPIR-V optimization pass, reducing stuttering considerably while barely affecting performance.