[android, vk] Experimental vram usage patch #32

Closed
crueter wants to merge 2 commits from 865-patches-v3 into master
40 changed files with 165 additions and 221 deletions

View file

@ -31,7 +31,7 @@ endif()
# Generate cpp with Git revision from template # Generate cpp with Git revision from template
# Also if this is a CI build, add the build name (ie: Nightly, Canary) to the scm_rev file as well # Also if this is a CI build, add the build name (ie: Nightly, Canary) to the scm_rev file as well
set(REPO_NAME "eden") set(REPO_NAME "Eden")
set(BUILD_ID ${GIT_BRANCH}) set(BUILD_ID ${GIT_BRANCH})
set(BUILD_FULLNAME "${REPO_NAME} ${BUILD_VERSION} ") set(BUILD_FULLNAME "${REPO_NAME} ${BUILD_VERSION} ")

View file

@ -116,7 +116,7 @@ android {
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build. // Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
register("relWithDebInfo") { register("relWithDebInfo") {
isDefault = true isDefault = true
resValue("string", "app_name_suffixed", "eden Debug Release") resValue("string", "app_name_suffixed", "Eden Debug Release")
signingConfig = signingConfigs.getByName("default") signingConfig = signingConfigs.getByName("default")
isDebuggable = true isDebuggable = true
proguardFiles( proguardFiles(
@ -132,7 +132,7 @@ android {
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build. // Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
debug { debug {
signingConfig = signingConfigs.getByName("default") signingConfig = signingConfigs.getByName("default")
resValue("string", "app_name_suffixed", "eden Debug") resValue("string", "app_name_suffixed", "Eden Debug")
isDebuggable = true isDebuggable = true
isJniDebuggable = true isJniDebuggable = true
versionNameSuffix = "-debug" versionNameSuffix = "-debug"
@ -150,7 +150,7 @@ android {
create("genshinSpoof") { create("genshinSpoof") {
dimension = "version" dimension = "version"
applicationId = "com.miHoYo.Yuanshen" // Correct use of applicationId inside the flavor block applicationId = "com.miHoYo.Yuanshen"
} }
} }
} }

View file

@ -130,12 +130,12 @@ abstract class SettingsItem(
) )
) )
put( put(
SliderSetting( SingleChoiceSetting(
ByteSetting.RENDERER_DYNA_STATE, ByteSetting.RENDERER_DYNA_STATE,
titleId = R.string.dyna_state, titleId = R.string.dyna_state,
descriptionId = R.string.dyna_state_description, descriptionId = R.string.dyna_state_description,
min = 0, choicesId = R.array.dynaStateEntries,
max = 3, valuesId = R.array.dynaStateValues
) )
) )
put( put(

View file

@ -154,6 +154,8 @@ class SettingsDialogFragment : DialogFragment(), DialogInterface.OnClickListener
stringInputBinding.generate.setOnClickListener { stringInputBinding.generate.setOnClickListener {
stringInputBinding.editText.setText(onGenerate()) stringInputBinding.editText.setText(onGenerate())
} }
} else {
stringInputBinding.generate.isVisible = false
} }
val validator = item.validator val validator = item.validator

View file

@ -141,9 +141,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">خلفية Shader</string> <string name="shader_backend">خلفية Shader</string>
<string name="shader_backend_description">اختيار طريقة ترجمة Shaders</string> <string name="shader_backend_description">اختيار طريقة ترجمة Shaders</string>
<string name="shader_backend_glsl">عام</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">محاكاة NVDEC</string> <string name="nvdec_emulation">محاكاة NVDEC</string>
@ -152,8 +152,8 @@
<string name="nvdec_emulation_gpu">وحدة المعالجة الرسومية</string> <string name="nvdec_emulation_gpu">وحدة المعالجة الرسومية</string>
<string name="nvdec_emulation_none">لا شيء</string> <string name="nvdec_emulation_none">لا شيء</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">تحسين SPIRV</string> <string name="renderer_optimize_spirv_output">تحسين Spir-V</string>
<string name="renderer_optimize_spirv_output_description">يحسن الشادر المترجم لزيادة كفاءة GPU.</string> <string name="renderer_optimize_spirv_output_description">يحسن الشادر المترجم لزيادة كفاءة GPU.</string>
<string name="never">أبداً</string> <string name="never">أبداً</string>
<string name="on_load">عند التحميل</string> <string name="on_load">عند التحميل</string>

View file

@ -138,9 +138,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">شادەر باکند</string> <string name="shader_backend">شادەر باکند</string>
<string name="shader_backend_description">هەڵبژاردنی ڕێگای پێکهێنانی شادەر</string> <string name="shader_backend_description">هەڵبژاردنی ڕێگای پێکهێنانی شادەر</string>
<string name="shader_backend_glsl">گشتی</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">ئیمولەیشنی NVDEC</string> <string name="nvdec_emulation">ئیمولەیشنی NVDEC</string>
@ -149,8 +149,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">هیچ</string> <string name="nvdec_emulation_none">هیچ</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">باشترکردنی دەرچوونی SPIRV</string> <string name="renderer_optimize_spirv_output">باشترکردنی دەرچوونی Spir-V</string>
<string name="renderer_optimize_spirv_output_description">شێیدەرە کۆمپایلکراوەکان باش دەکات بۆ باشترکردنی کارایی GPU.</string> <string name="renderer_optimize_spirv_output_description">شێیدەرە کۆمپایلکراوەکان باش دەکات بۆ باشترکردنی کارایی GPU.</string>
<string name="never">هەرگیز</string> <string name="never">هەرگیز</string>
<string name="on_load">لەسەر بارکردن</string> <string name="on_load">لەسەر بارکردن</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend shaderů</string> <string name="shader_backend">Backend shaderů</string>
<string name="shader_backend_description">Způsob kompilace shaderů</string> <string name="shader_backend_description">Způsob kompilace shaderů</string>
<string name="shader_backend_glsl">Univerzální</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Emulace NVDEC</string> <string name="nvdec_emulation">Emulace NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Žádné</string> <string name="nvdec_emulation_none">Žádné</string>
<!-- Optimalizace SPIRV výstupu --> <!-- Optimalizace Spir-V výstupu -->
<string name="renderer_optimize_spirv_output">Optimalizovat SPIRV výstup</string> <string name="renderer_optimize_spirv_output">Optimalizovat Spir-V výstup</string>
<string name="renderer_optimize_spirv_output_description">Optimalizuje zkompilovaný shader pro zvýšení efektivity GPU.</string> <string name="renderer_optimize_spirv_output_description">Optimalizuje zkompilovaný shader pro zvýšení efektivity GPU.</string>
<string name="never">Nikdy</string> <string name="never">Nikdy</string>
<string name="on_load">Při načtení</string> <string name="on_load">Při načtení</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Shader-Backend</string> <string name="shader_backend">Shader-Backend</string>
<string name="shader_backend_description">Methode zur Shader-Kompilierung</string> <string name="shader_backend_description">Methode zur Shader-Kompilierung</string>
<string name="shader_backend_glsl">Universal</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDEC-Emulation</string> <string name="nvdec_emulation">NVDEC-Emulation</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Keine</string> <string name="nvdec_emulation_none">Keine</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">SPIRV-Optimierung</string> <string name="renderer_optimize_spirv_output">Spir-V-Optimierung</string>
<string name="renderer_optimize_spirv_output_description">Optimiert den kompilierten Shader, um die GPU-Effizienz zu verbessern.</string> <string name="renderer_optimize_spirv_output_description">Optimiert den kompilierten Shader, um die GPU-Effizienz zu verbessern.</string>
<string name="never">Nie</string> <string name="never">Nie</string>
<string name="on_load">Beim Laden</string> <string name="on_load">Beim Laden</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend de shaders</string> <string name="shader_backend">Backend de shaders</string>
<string name="shader_backend_description">Elegir cómo se compilan shaders</string> <string name="shader_backend_description">Elegir cómo se compilan shaders</string>
<string name="shader_backend_glsl">Universal</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Emulación NVDEC</string> <string name="nvdec_emulation">Emulación NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Ninguno</string> <string name="nvdec_emulation_none">Ninguno</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Optimizar salida SPIRV</string> <string name="renderer_optimize_spirv_output">Optimizar salida Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Optimiza el sombreador compilado para mejorar la eficiencia de la GPU.</string> <string name="renderer_optimize_spirv_output_description">Optimiza el sombreador compilado para mejorar la eficiencia de la GPU.</string>
<string name="never">Nunca</string> <string name="never">Nunca</string>
<string name="on_load">Al cargar</string> <string name="on_load">Al cargar</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">بک‌اند شیدر</string> <string name="shader_backend">بک‌اند شیدر</string>
<string name="shader_backend_description">انتخاب روش کامپایل و ترجمه شیدرها</string> <string name="shader_backend_description">انتخاب روش کامپایل و ترجمه شیدرها</string>
<string name="shader_backend_glsl">همه‌کاره</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">شبیه‌سازی NVDEC</string> <string name="nvdec_emulation">شبیه‌سازی NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">هیچ‌کدام</string> <string name="nvdec_emulation_none">هیچ‌کدام</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">بهینه‌سازی خروجی SPIRV</string> <string name="renderer_optimize_spirv_output">بهینه‌سازی خروجی Spir-V</string>
<string name="renderer_optimize_spirv_output_description">شیدر کامپایل شده را برای بهبود کارایی GPU بهینه‌سازی می‌کند.</string> <string name="renderer_optimize_spirv_output_description">شیدر کامپایل شده را برای بهبود کارایی GPU بهینه‌سازی می‌کند.</string>
<string name="never">هرگز</string> <string name="never">هرگز</string>
<string name="on_load">در هنگام بارگذاری</string> <string name="on_load">در هنگام بارگذاری</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend shader</string> <string name="shader_backend">Backend shader</string>
<string name="shader_backend_description">Méthode de compilation</string> <string name="shader_backend_description">Méthode de compilation</string>
<string name="shader_backend_glsl">Universel</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Émulation NVDEC</string> <string name="nvdec_emulation">Émulation NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Aucun</string> <string name="nvdec_emulation_none">Aucun</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Optimiser SPIRV</string> <string name="renderer_optimize_spirv_output">Optimiser Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Optimise le shader compilé pour améliorer l\'efficacité du GPU.</string> <string name="renderer_optimize_spirv_output_description">Optimise le shader compilé pour améliorer l\'efficacité du GPU.</string>
<string name="never">Jamais</string> <string name="never">Jamais</string>
<string name="on_load">Au chargement</string> <string name="on_load">Au chargement</string>

View file

@ -138,9 +138,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">מנוע שיידרים</string> <string name="shader_backend">מנוע שיידרים</string>
<string name="shader_backend_description">בחר כיצד לקמפל שיידרים</string> <string name="shader_backend_description">בחר כיצד לקמפל שיידרים</string>
<string name="shader_backend_glsl">אוניברסלי</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">אמולציית NVDEC</string> <string name="nvdec_emulation">אמולציית NVDEC</string>
@ -149,8 +149,8 @@
<string name="nvdec_emulation_gpu">כרטיס מסך</string> <string name="nvdec_emulation_gpu">כרטיס מסך</string>
<string name="nvdec_emulation_none">ללא</string> <string name="nvdec_emulation_none">ללא</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">אופטימיזציית SPIRV</string> <string name="renderer_optimize_spirv_output">אופטימיזציית Spir-V</string>
<string name="renderer_optimize_spirv_output_description">משפר את השאדר המהודר כדי להגביר את יעילות ה-GPU.</string> <string name="renderer_optimize_spirv_output_description">משפר את השאדר המהודר כדי להגביר את יעילות ה-GPU.</string>
<string name="never">לעולם לא</string> <string name="never">לעולם לא</string>
<string name="on_load">בטעינה</string> <string name="on_load">בטעינה</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Shader backend</string> <string name="shader_backend">Shader backend</string>
<string name="shader_backend_description">Shaderek fordításának módja</string> <string name="shader_backend_description">Shaderek fordításának módja</string>
<string name="shader_backend_glsl">Univerzális</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDEC emuláció</string> <string name="nvdec_emulation">NVDEC emuláció</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Nincs</string> <string name="nvdec_emulation_none">Nincs</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">SPIRV optimalizálás</string> <string name="renderer_optimize_spirv_output">Spir-V optimalizálás</string>
<string name="renderer_optimize_spirv_output_description">Optimalizálja a lefordított shadert a GPU hatékonyságának javításáért.</string> <string name="renderer_optimize_spirv_output_description">Optimalizálja a lefordított shadert a GPU hatékonyságának javításáért.</string>
<string name="never">Soha</string> <string name="never">Soha</string>
<string name="on_load">Betöltéskor</string> <string name="on_load">Betöltéskor</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend Shader</string> <string name="shader_backend">Backend Shader</string>
<string name="shader_backend_description">Pilih cara shader dikompilasi dan diterjemahkan untuk GPU Anda.</string> <string name="shader_backend_description">Pilih cara shader dikompilasi dan diterjemahkan untuk GPU Anda.</string>
<string name="shader_backend_glsl">Universal</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Emulasi NVDEC</string> <string name="nvdec_emulation">Emulasi NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Tidak Ada</string> <string name="nvdec_emulation_none">Tidak Ada</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Optimalkan Output SPIRV</string> <string name="renderer_optimize_spirv_output">Optimalkan Output Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Mengoptimalkan shader yang dikompilasi untuk meningkatkan efisiensi GPU.</string> <string name="renderer_optimize_spirv_output_description">Mengoptimalkan shader yang dikompilasi untuk meningkatkan efisiensi GPU.</string>
<string name="never">Tidak Pernah</string> <string name="never">Tidak Pernah</string>
<string name="on_load">Saat Memuat</string> <string name="on_load">Saat Memuat</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend shader</string> <string name="shader_backend">Backend shader</string>
<string name="shader_backend_description">Scegli come compilare gli shader</string> <string name="shader_backend_description">Scegli come compilare gli shader</string>
<string name="shader_backend_glsl">Universale</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Emulazione NVDEC</string> <string name="nvdec_emulation">Emulazione NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Nessuna</string> <string name="nvdec_emulation_none">Nessuna</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Ottimizza output SPIRV</string> <string name="renderer_optimize_spirv_output">Ottimizza output Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Ottimizza lo shader compilato per migliorare l\'efficienza della GPU.</string> <string name="renderer_optimize_spirv_output_description">Ottimizza lo shader compilato per migliorare l\'efficienza della GPU.</string>
<string name="never">Mai</string> <string name="never">Mai</string>
<string name="on_load">Al caricamento</string> <string name="on_load">Al caricamento</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">シェーダーバックエンド</string> <string name="shader_backend">シェーダーバックエンド</string>
<string name="shader_backend_description">シェーダーのコンパイル方法</string> <string name="shader_backend_description">シェーダーのコンパイル方法</string>
<string name="shader_backend_glsl">ユニバーサル</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDECエミュレーション</string> <string name="nvdec_emulation">NVDECエミュレーション</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">無効</string> <string name="nvdec_emulation_none">無効</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">SPIRV最適化</string> <string name="renderer_optimize_spirv_output">Spir-V最適化</string>
<string name="renderer_optimize_spirv_output_description">コンパイル済みシェーダーを最適化し、GPUの効率を向上させます。</string> <string name="renderer_optimize_spirv_output_description">コンパイル済みシェーダーを最適化し、GPUの効率を向上させます。</string>
<string name="never">無効</string> <string name="never">無効</string>
<string name="on_load">ロード時</string> <string name="on_load">ロード時</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">셰이더 백엔드</string> <string name="shader_backend">셰이더 백엔드</string>
<string name="shader_backend_description">셰이더 컴파일 방식 선택</string> <string name="shader_backend_description">셰이더 컴파일 방식 선택</string>
<string name="shader_backend_glsl">범용</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDEC 에뮬레이션</string> <string name="nvdec_emulation">NVDEC 에뮬레이션</string>
<string name="nvdec_emulation_description">비디오 디코딩 처리 방식 선택</string> <string name="nvdec_emulation_description">비디오 디코딩 처리 방식 선택</string>
@ -147,8 +147,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">없음</string> <string name="nvdec_emulation_none">없음</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">SPIRV 출력 최적화</string> <string name="renderer_optimize_spirv_output">Spir-V 출력 최적화</string>
<string name="renderer_optimize_spirv_output_description">컴파일된 셰이더를 최적화하여 GPU 효율성을 향상시킵니다.</string> <string name="renderer_optimize_spirv_output_description">컴파일된 셰이더를 최적화하여 GPU 효율성을 향상시킵니다.</string>
<string name="never">안 함</string> <string name="never">안 함</string>
<string name="on_load">로드 시</string> <string name="on_load">로드 시</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Shader-backend</string> <string name="shader_backend">Shader-backend</string>
<string name="shader_backend_description">Velg hvordan shadere kompileres</string> <string name="shader_backend_description">Velg hvordan shadere kompileres</string>
<string name="shader_backend_glsl">Universell</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDEC-emulering</string> <string name="nvdec_emulation">NVDEC-emulering</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Ingen</string> <string name="nvdec_emulation_none">Ingen</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Optimaliser SPIRV</string> <string name="renderer_optimize_spirv_output">Optimaliser Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Optimaliserer den kompilerte shaderen for å forbedre GPU-effektiviteten.</string> <string name="renderer_optimize_spirv_output_description">Optimaliserer den kompilerte shaderen for å forbedre GPU-effektiviteten.</string>
<string name="never">Aldri</string> <string name="never">Aldri</string>
<string name="on_load">Ved lasting</string> <string name="on_load">Ved lasting</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend shaderów</string> <string name="shader_backend">Backend shaderów</string>
<string name="shader_backend_description">Wybierz metodę kompilacji shaderów.</string> <string name="shader_backend_description">Wybierz metodę kompilacji shaderów.</string>
<string name="shader_backend_glsl">Uniwersalny</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Emulacja NVDEC</string> <string name="nvdec_emulation">Emulacja NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Brak</string> <string name="nvdec_emulation_none">Brak</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Optymalizuj SPIRV</string> <string name="renderer_optimize_spirv_output">Optymalizuj Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Optymalizuje skompilowany shader w celu poprawy wydajności GPU.</string> <string name="renderer_optimize_spirv_output_description">Optymalizuje skompilowany shader w celu poprawy wydajności GPU.</string>
<string name="never">Nigdy</string> <string name="never">Nigdy</string>
<string name="on_load">Podczas ładowania</string> <string name="on_load">Podczas ładowania</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend de shader</string> <string name="shader_backend">Backend de shader</string>
<string name="shader_backend_description">Define como shaders são compilados</string> <string name="shader_backend_description">Define como shaders são compilados</string>
<string name="shader_backend_glsl">Universal</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Emulação NVDEC</string> <string name="nvdec_emulation">Emulação NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Nenhum</string> <string name="nvdec_emulation_none">Nenhum</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Otimizar saída SPIRV</string> <string name="renderer_optimize_spirv_output">Otimizar saída Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Otimiza o shader compilado para melhorar a eficiência da GPU.</string> <string name="renderer_optimize_spirv_output_description">Otimiza o shader compilado para melhorar a eficiência da GPU.</string>
<string name="never">Nunca</string> <string name="never">Nunca</string>
<string name="on_load">Ao carregar</string> <string name="on_load">Ao carregar</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend de Shader</string> <string name="shader_backend">Backend de Shader</string>
<string name="shader_backend_description">Método de compilação de shaders.</string> <string name="shader_backend_description">Método de compilação de shaders.</string>
<string name="shader_backend_glsl">Universal</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Emulação NVDEC</string> <string name="nvdec_emulation">Emulação NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Nenhum</string> <string name="nvdec_emulation_none">Nenhum</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Otimizar SPIRV</string> <string name="renderer_optimize_spirv_output">Otimizar Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Otimiza o shader compilado para melhorar a eficiência da GPU.</string> <string name="renderer_optimize_spirv_output_description">Otimiza o shader compilado para melhorar a eficiência da GPU.</string>
<string name="never">Nunca</string> <string name="never">Nunca</string>
<string name="on_load">Ao Carregar</string> <string name="on_load">Ao Carregar</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Шейдерный бэкенд</string> <string name="shader_backend">Шейдерный бэкенд</string>
<string name="shader_backend_description">Метод компиляции шейдеров</string> <string name="shader_backend_description">Метод компиляции шейдеров</string>
<string name="shader_backend_glsl">Универсальный</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Эмуляция NVDEC</string> <string name="nvdec_emulation">Эмуляция NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Отключено</string> <string name="nvdec_emulation_none">Отключено</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Оптимизация SPIRV</string> <string name="renderer_optimize_spirv_output">Оптимизация Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Оптимизирует скомпилированный шейдер для повышения эффективности GPU.</string> <string name="renderer_optimize_spirv_output_description">Оптимизирует скомпилированный шейдер для повышения эффективности GPU.</string>
<string name="never">Никогда</string> <string name="never">Никогда</string>
<string name="on_load">При загрузке</string> <string name="on_load">При загрузке</string>

View file

@ -112,9 +112,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Схадер Бацкенд</string> <string name="shader_backend">Схадер Бацкенд</string>
<string name="shader_backend_description">Изаберите како се сјеначици саставе и преведете за ваш ГПУ.</string> <string name="shader_backend_description">Изаберите како се сјеначици саставе и преведете за ваш ГПУ.</string>
<string name="shader_backend_glsl">Универзалан</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Мали</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Адрено / Ксцлипсе</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">НВДЕЦ Емулација</string> <string name="nvdec_emulation">НВДЕЦ Емулација</string>
@ -123,7 +123,7 @@
<string name="nvdec_emulation_gpu">ГПУ</string> <string name="nvdec_emulation_gpu">ГПУ</string>
<string name="nvdec_emulation_none">Ниједан</string> <string name="nvdec_emulation_none">Ниједан</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="never">Невер</string> <string name="never">Невер</string>
<string name="on_load">На оптерећење</string> <string name="on_load">На оптерећење</string>
<string name="always">Увек</string> <string name="always">Увек</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Система обробки шейдерів</string> <string name="shader_backend">Система обробки шейдерів</string>
<string name="shader_backend_description">Спосіб компіляції шейдерів</string> <string name="shader_backend_description">Спосіб компіляції шейдерів</string>
<string name="shader_backend_glsl">Універсальний</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Емуляція NVDEC</string> <string name="nvdec_emulation">Емуляція NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Вимкнено</string> <string name="nvdec_emulation_none">Вимкнено</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Оптимізація SPIRV</string> <string name="renderer_optimize_spirv_output">Оптимізація Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Оптимізує скомпільований шейдер для покращення ефективності GPU.</string> <string name="renderer_optimize_spirv_output_description">Оптимізує скомпільований шейдер для покращення ефективності GPU.</string>
<string name="never">Ніколи</string> <string name="never">Ніколи</string>
<string name="on_load">При завантаженні</string> <string name="on_load">При завантаженні</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Backend Shader</string> <string name="shader_backend">Backend Shader</string>
<string name="shader_backend_description">Chọn cách biên dịch shader</string> <string name="shader_backend_description">Chọn cách biên dịch shader</string>
<string name="shader_backend_glsl">Đa năng</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">Giả lập NVDEC</string> <string name="nvdec_emulation">Giả lập NVDEC</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">Tắt</string> <string name="nvdec_emulation_none">Tắt</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">Tối ưu SPIRV</string> <string name="renderer_optimize_spirv_output">Tối ưu Spir-V</string>
<string name="renderer_optimize_spirv_output_description">Tối ưu hóa shader đã biên dịch để cải thiện hiệu suất GPU.</string> <string name="renderer_optimize_spirv_output_description">Tối ưu hóa shader đã biên dịch để cải thiện hiệu suất GPU.</string>
<string name="never">Không</string> <string name="never">Không</string>
<string name="on_load">Khi tải</string> <string name="on_load">Khi tải</string>

View file

@ -137,9 +137,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">着色器后端</string> <string name="shader_backend">着色器后端</string>
<string name="shader_backend_description">选择着色器编译方式</string> <string name="shader_backend_description">选择着色器编译方式</string>
<string name="shader_backend_glsl">通用</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDEC模拟</string> <string name="nvdec_emulation">NVDEC模拟</string>
@ -148,8 +148,8 @@
<string name="nvdec_emulation_gpu">GPU解码</string> <string name="nvdec_emulation_gpu">GPU解码</string>
<string name="nvdec_emulation_none">禁用</string> <string name="nvdec_emulation_none">禁用</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">SPIRV优化</string> <string name="renderer_optimize_spirv_output">Spir-V优化</string>
<string name="renderer_optimize_spirv_output_description">优化编译后的着色器以提高GPU效率。</string> <string name="renderer_optimize_spirv_output_description">优化编译后的着色器以提高GPU效率。</string>
<string name="never">从不</string> <string name="never">从不</string>
<string name="on_load">加载时</string> <string name="on_load">加载时</string>

View file

@ -142,9 +142,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">著色器後端</string> <string name="shader_backend">著色器後端</string>
<string name="shader_backend_description">選擇著色器的編譯與轉譯方式</string> <string name="shader_backend_description">選擇著色器的編譯與轉譯方式</string>
<string name="shader_backend_glsl">通用</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDEC模擬</string> <string name="nvdec_emulation">NVDEC模擬</string>
@ -153,8 +153,8 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none"></string> <string name="nvdec_emulation_none"></string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="renderer_optimize_spirv_output">優化SPIRV輸出</string> <string name="renderer_optimize_spirv_output">優化Spir-V輸出</string>
<string name="renderer_optimize_spirv_output_description">最佳化編譯後的著色器以提高GPU效率。</string> <string name="renderer_optimize_spirv_output_description">最佳化編譯後的著色器以提高GPU效率。</string>
<string name="never">永不</string> <string name="never">永不</string>
<string name="on_load">載入時</string> <string name="on_load">載入時</string>

View file

@ -481,4 +481,19 @@
<item>0</item> <item>0</item>
<item>1</item> <item>1</item>
</integer-array> </integer-array>
<string-array name="dynaStateEntries">
<item>@string/disabled</item>
<item>1</item>
<item>2</item>
<item>3</item>
</string-array>
<integer-array name="dynaStateValues">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
</integer-array>
</resources> </resources>

View file

@ -75,6 +75,7 @@
<string name="veil_extensions">GPU Extensions</string> <string name="veil_extensions">GPU Extensions</string>
<string name="dyna_state">Extended Dynamic State</string> <string name="dyna_state">Extended Dynamic State</string>
<string name="dyna_state_description">Enables Vulkan features to improve performance, rendering, and save resources on pipeline creation while maintaining lower CPU/GPU usage. These extensions may increase device temperature, and GPUs belonging to the older A6XX line may not react properly. Set to 0 to use Legacy emulated formats.</string> <string name="dyna_state_description">Enables Vulkan features to improve performance, rendering, and save resources on pipeline creation while maintaining lower CPU/GPU usage. These extensions may increase device temperature, and GPUs belonging to the older A6XX line may not react properly. Set to 0 to use Legacy emulated formats.</string>
<string name="disabled">Disabled</string>
<string name="provoking_vertex">Provoking Vertex</string> <string name="provoking_vertex">Provoking Vertex</string>
<string name="provoking_vertex_description">Improves lighting and vertex handling in certain games. Only supported on Vulkan 1.0+ GPUs.</string> <string name="provoking_vertex_description">Improves lighting and vertex handling in certain games. Only supported on Vulkan 1.0+ GPUs.</string>
<string name="descriptor_indexing">Descriptor Indexing</string> <string name="descriptor_indexing">Descriptor Indexing</string>
@ -105,7 +106,7 @@
<string name="custom_cpu_ticks_description">Set a custom value of CPU ticks. Higher values can increase performance, but may also cause the game to freeze. A range of 7721000 is recommended.</string> <string name="custom_cpu_ticks_description">Set a custom value of CPU ticks. Higher values can increase performance, but may also cause the game to freeze. A range of 7721000 is recommended.</string>
<string name="cpu_ticks">Ticks</string> <string name="cpu_ticks">Ticks</string>
<string name="skip_cpu_inner_invalidation">Skip CPU Inner Invalidation</string> <string name="skip_cpu_inner_invalidation">Skip CPU Inner Invalidation</string>
<string name="skip_cpu_inner_invalidation_description">Skips certain CPU-side cache invalidations during memory updates, reducing CPU usage and improving it's performance. This may cause glitches or crashes on some games.</string> <string name="skip_cpu_inner_invalidation_description">Skips certain CPU-side cache invalidations during memory updates, reducing CPU usage and improving its performance. This may cause glitches or crashes on some games.</string>
<string name="fast_cpu_time">CPU Clock</string> <string name="fast_cpu_time">CPU Clock</string>
<string name="fast_cpu_time_description">Use Boost (1700MHz) to run at the Switch\'s highest native clock, or Fast (2000MHz) to run at 2x clock.</string> <string name="fast_cpu_time_description">Use Boost (1700MHz) to run at the Switch\'s highest native clock, or Fast (2000MHz) to run at 2x clock.</string>
<string name="memory_layout">Memory Layout</string> <string name="memory_layout">Memory Layout</string>
@ -114,9 +115,9 @@
<!-- Shader Backend --> <!-- Shader Backend -->
<string name="shader_backend">Shader Backend</string> <string name="shader_backend">Shader Backend</string>
<string name="shader_backend_description">Choose how shaders are compiled and translated for your GPU.</string> <string name="shader_backend_description">Choose how shaders are compiled and translated for your GPU.</string>
<string name="shader_backend_glsl">Universal</string> <string name="shader_backend_glsl">GLSL</string>
<string name="shader_backend_glasm">Mali</string> <string name="shader_backend_glasm">GLASM</string>string>
<string name="shader_backend_spirv">Adreno/Xclipse</string> <string name="shader_backend_spirv">Spir-V</string>string>
<!-- NVDEC Emulation --> <!-- NVDEC Emulation -->
<string name="nvdec_emulation">NVDEC Emulation</string> <string name="nvdec_emulation">NVDEC Emulation</string>
@ -125,7 +126,7 @@
<string name="nvdec_emulation_gpu">GPU</string> <string name="nvdec_emulation_gpu">GPU</string>
<string name="nvdec_emulation_none">None</string> <string name="nvdec_emulation_none">None</string>
<!-- Optimize SPIRV output --> <!-- Optimize Spir-V output -->
<string name="never">Never</string> <string name="never">Never</string>
<string name="on_load">On Load</string> <string name="on_load">On Load</string>
<string name="always">Always</string> <string name="always">Always</string>
@ -484,8 +485,8 @@
<string name="renderer_anti_aliasing">Anti-aliasing method</string> <string name="renderer_anti_aliasing">Anti-aliasing method</string>
<string name="renderer_force_max_clock">Force maximum clocks (Adreno only)</string> <string name="renderer_force_max_clock">Force maximum clocks (Adreno only)</string>
<string name="renderer_force_max_clock_description">Forces the GPU to run at the maximum possible clocks (thermal constraints will still be applied).</string> <string name="renderer_force_max_clock_description">Forces the GPU to run at the maximum possible clocks (thermal constraints will still be applied).</string>
<string name="renderer_optimize_spirv_output">Optimize SPIRV output</string> <string name="renderer_optimize_spirv_output">Optimize Spir-V output</string>
<string name="renderer_optimize_spirv_output_description">Optimizes compiled shader to improve GPU efficiency.</string> <string name="renderer_optimize_spirv_output_description">Optimizes compiled shaders to improve GPU efficiency, but may introduce longer loading times and initial slowdowns.</string>
<string name="renderer_asynchronous_shaders">Use asynchronous shaders</string> <string name="renderer_asynchronous_shaders">Use asynchronous shaders</string>
<string name="renderer_asynchronous_shaders_description">Compiles shaders asynchronously. This may reduce stutters but may also introduce glitches.</string> <string name="renderer_asynchronous_shaders_description">Compiles shaders asynchronously. This may reduce stutters but may also introduce glitches.</string>
<string name="use_fast_gpu_time">Use Fast GPU Time</string> <string name="use_fast_gpu_time">Use Fast GPU Time</string>

View file

@ -1,21 +1,11 @@
// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: 2015 Citra Emulator Project // SPDX-FileCopyrightText: 2015 Citra Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
// Use this to disable microprofile. This will get you cleaner profiles when using // Uncomment this to disable microprofile. This will get you cleaner profiles when using
// external sampling profilers like "Very Sleepy", and will improve performance somewhat. // external sampling profilers like "Very Sleepy", and will improve performance somewhat.
#ifdef ANDROID // #define MICROPROFILE_ENABLED 0
#define MICROPROFILE_ENABLED 0
#define MICROPROFILEUI_ENABLED 0
#define MicroProfileOnThreadExit() do{}while(0)
#define MICROPROFILE_TOKEN(x) 0
#define MicroProfileEnter(x) 0
#define MicroProfileLeave(x, y) ignore_all(x, y)
#endif
// Customized Citra settings. // Customized Citra settings.
// This file wraps the MicroProfile header so that these are consistent everywhere. // This file wraps the MicroProfile header so that these are consistent everywhere.
@ -29,12 +19,6 @@
typedef void* HANDLE; typedef void* HANDLE;
#endif #endif
#include <tuple>
template <typename... Args>
void ignore_all(Args&&... args) {
(static_cast<void>(std::ignore = args), ...);
}
#include <microprofile.h> #include <microprofile.h>
#define MP_RGB(r, g, b) ((r) << 16 | (g) << 8 | (b) << 0) #define MP_RGB(r, g, b) ((r) << 16 | (g) << 8 | (b) << 0)

View file

@ -151,7 +151,7 @@ struct Values {
Category::LibraryApplet}; Category::LibraryApplet};
Setting<AppletMode> player_select_applet_mode{ Setting<AppletMode> player_select_applet_mode{
linkage, AppletMode::LLE, "player_select_applet_mode", Category::LibraryApplet}; linkage, AppletMode::LLE, "player_select_applet_mode", Category::LibraryApplet};
Setting<AppletMode> swkbd_applet_mode{linkage, AppletMode::LLE, "swkbd_applet_mode", Setting<AppletMode> swkbd_applet_mode{linkage, AppletMode::HLE, "swkbd_applet_mode",
Category::LibraryApplet}; Category::LibraryApplet};
Setting<AppletMode> mii_edit_applet_mode{linkage, AppletMode::LLE, "mii_edit_applet_mode", Setting<AppletMode> mii_edit_applet_mode{linkage, AppletMode::LLE, "mii_edit_applet_mode",
Category::LibraryApplet}; Category::LibraryApplet};
@ -220,7 +220,7 @@ struct Values {
SwitchableSetting<bool> sync_core_speed{linkage, false, "sync_core_speed", Category::Core, Specialization::Default}; SwitchableSetting<bool> sync_core_speed{linkage, false, "sync_core_speed", Category::Core, Specialization::Default};
// Memory // Memory
#ifdef ANDROID #ifdef HAS_NCE
SwitchableSetting<bool> lru_cache_enabled{linkage, false, "use_lru_cache", Category::System}; SwitchableSetting<bool> lru_cache_enabled{linkage, false, "use_lru_cache", Category::System};
#endif #endif
@ -317,7 +317,7 @@ struct Values {
linkage, RendererBackend::Vulkan, RendererBackend::OpenGL, RendererBackend::Null, linkage, RendererBackend::Vulkan, RendererBackend::OpenGL, RendererBackend::Null,
"backend", Category::Renderer}; "backend", Category::Renderer};
SwitchableSetting<ShaderBackend, true> shader_backend{ SwitchableSetting<ShaderBackend, true> shader_backend{
linkage, ShaderBackend::Glsl, ShaderBackend::Glsl, ShaderBackend::SpirV, linkage, ShaderBackend::SpirV, ShaderBackend::Glsl, ShaderBackend::SpirV,
"shader_backend", Category::Renderer, Specialization::RuntimeList}; "shader_backend", Category::Renderer, Specialization::RuntimeList};
SwitchableSetting<int> vulkan_device{linkage, 0, "vulkan_device", Category::Renderer, SwitchableSetting<int> vulkan_device{linkage, 0, "vulkan_device", Category::Renderer,
Specialization::RuntimeList}; Specialization::RuntimeList};
@ -477,7 +477,7 @@ struct Values {
SwitchableSetting<bool> use_asynchronous_shaders{linkage, false, "use_asynchronous_shaders", SwitchableSetting<bool> use_asynchronous_shaders{linkage, false, "use_asynchronous_shaders",
Category::RendererAdvanced}; Category::RendererAdvanced};
SwitchableSetting<bool> use_fast_gpu_time{linkage, SwitchableSetting<bool> use_fast_gpu_time{linkage,
true, false,
"use_fast_gpu_time", "use_fast_gpu_time",
Category::RendererAdvanced, Category::RendererAdvanced,
Specialization::Paired, Specialization::Paired,

View file

@ -227,7 +227,7 @@ HaltReason ArmNce::RunThread(Kernel::KThread* thread) {
if (auto it = post_handlers.find(m_guest_ctx.pc); it != post_handlers.end()) { if (auto it = post_handlers.find(m_guest_ctx.pc); it != post_handlers.end()) {
hr = ReturnToRunCodeByTrampoline(thread_params, &m_guest_ctx, it->second); hr = ReturnToRunCodeByTrampoline(thread_params, &m_guest_ctx, it->second);
} else { } else {
hr = ReturnToRunCodeByExceptionLevelChange(m_thread_id, thread_params); // Android: Use "process handle SIGUSR2 -n true -p true -s false" (and SIGURG) in LLDB when debugging hr = ReturnToRunCodeByExceptionLevelChange(m_thread_id, thread_params);
} }
// Critical section for thread cleanup // Critical section for thread cleanup

View file

@ -53,16 +53,6 @@ enum class NetDbError : s32 {
NoData = 4, NoData = 4,
}; };
const std::vector<std::string> blockedDomains = {"srv.nintendo.net", "battle.net",
"microsoft.com", "mojang.com",
"xboxlive.com", "minecraftservices.com"};
static bool IsBlockedHost(const std::string& host) {
return std::any_of(
blockedDomains.begin(), blockedDomains.end(),
[&host](const std::string& domain) { return host.find(domain) != std::string::npos; });
}
static NetDbError GetAddrInfoErrorToNetDbError(GetAddrInfoError result) { static NetDbError GetAddrInfoErrorToNetDbError(GetAddrInfoError result) {
// These combinations have been verified on console (but are not // These combinations have been verified on console (but are not
// exhaustive). // exhaustive).
@ -164,7 +154,7 @@ static std::pair<u32, GetAddrInfoError> GetHostByNameRequestImpl(HLERequestConte
// For now, ignore options, which are in input buffer 1 for GetHostByNameRequestWithOptions. // For now, ignore options, which are in input buffer 1 for GetHostByNameRequestWithOptions.
// Prevent resolution of Nintendo servers // Prevent resolution of Nintendo servers
if (IsBlockedHost(host)) { if (host.find("srv.nintendo.net") != std::string::npos) {
LOG_WARNING(Network, "Resolution of hostname {} requested, returning EAI_AGAIN", host); LOG_WARNING(Network, "Resolution of hostname {} requested, returning EAI_AGAIN", host);
return {0, GetAddrInfoError::AGAIN}; return {0, GetAddrInfoError::AGAIN};
} }
@ -281,7 +271,7 @@ static std::pair<u32, GetAddrInfoError> GetAddrInfoRequestImpl(HLERequestContext
const std::string host = Common::StringFromBuffer(host_buffer); const std::string host = Common::StringFromBuffer(host_buffer);
// Prevent resolution of Nintendo servers // Prevent resolution of Nintendo servers
if (IsBlockedHost(host)) { if (host.find("srv.nintendo.net") != std::string::npos) {
LOG_WARNING(Network, "Resolution of hostname {} requested, returning EAI_AGAIN", host); LOG_WARNING(Network, "Resolution of hostname {} requested, returning EAI_AGAIN", host);
return {0, GetAddrInfoError::AGAIN}; return {0, GetAddrInfoError::AGAIN};
} }
@ -369,4 +359,5 @@ void SFDNSRES::ResolverSetOptionRequest(HLERequestContext& ctx) {
rb.Push(ResultSuccess); rb.Push(ResultSuccess);
rb.Push<s32>(0); // bsd errno rb.Push<s32>(0); // bsd errno
} }
} // namespace Service::Sockets } // namespace Service::Sockets

View file

@ -7,7 +7,6 @@
#include "common/bit_field.h" #include "common/bit_field.h"
#include "common/common_types.h" #include "common/common_types.h"
#include "shader_recompiler/frontend/maxwell/translate/impl/impl.h" #include "shader_recompiler/frontend/maxwell/translate/impl/impl.h"
#include <fstream>
namespace Shader::Maxwell { namespace Shader::Maxwell {
namespace { namespace {
@ -37,17 +36,6 @@ enum class ShuffleMode : u64 {
} }
} }
bool IsKONA() {
std::ifstream machineFile("/sys/devices/soc0/machine");
if (machineFile.is_open()) {
std::string line;
std::getline(machineFile, line);
if (line == "KONA")
return true;
}
return false;
}
void Shuffle(TranslatorVisitor& v, u64 insn, const IR::U32& index, const IR::U32& mask) { void Shuffle(TranslatorVisitor& v, u64 insn, const IR::U32& index, const IR::U32& mask) {
union { union {
u64 insn; u64 insn;
@ -59,9 +47,6 @@ void Shuffle(TranslatorVisitor& v, u64 insn, const IR::U32& index, const IR::U32
const IR::U32 result{ShuffleOperation(v.ir, v.X(shfl.src_reg), index, mask, shfl.mode)}; const IR::U32 result{ShuffleOperation(v.ir, v.X(shfl.src_reg), index, mask, shfl.mode)};
v.ir.SetPred(shfl.pred, v.ir.GetInBoundsFromOp(result)); v.ir.SetPred(shfl.pred, v.ir.GetInBoundsFromOp(result));
if (IsKONA())
v.X(shfl.dest_reg, v.ir.Imm32(0xffffffff)); // This fixes the freeze for Retroid / Snapdragon SD865
else
v.X(shfl.dest_reg, result); v.X(shfl.dest_reg, result);
} }
} // Anonymous namespace } // Anonymous namespace

View file

@ -26,9 +26,11 @@ BufferCache<P>::BufferCache(Tegra::MaxwellDeviceMemoryManager& device_memory_, R
void(slot_buffers.insert(runtime, NullBufferParams{})); void(slot_buffers.insert(runtime, NullBufferParams{}));
gpu_modified_ranges.Clear(); gpu_modified_ranges.Clear();
inline_buffer_id = NULL_BUFFER_ID; inline_buffer_id = NULL_BUFFER_ID;
#ifdef ANDROID #ifdef ANDROID
immediately_free = (Settings::values.vram_usage_mode.GetValue() == Settings::VramUsageMode::Aggressive); immediately_free = (Settings::values.vram_usage_mode.GetValue() == Settings::VramUsageMode::Aggressive);
#endif #endif
if (!runtime.CanReportMemoryUsage()) { if (!runtime.CanReportMemoryUsage()) {
minimum_memory = DEFAULT_EXPECTED_MEMORY; minimum_memory = DEFAULT_EXPECTED_MEMORY;
critical_memory = DEFAULT_CRITICAL_MEMORY; critical_memory = DEFAULT_CRITICAL_MEMORY;
@ -1385,8 +1387,9 @@ void BufferCache<P>::JoinOverlap(BufferId new_buffer_id, BufferId overlap_id,
}); });
new_buffer.MarkUsage(copies[0].dst_offset, copies[0].size); new_buffer.MarkUsage(copies[0].dst_offset, copies[0].size);
runtime.CopyBuffer(new_buffer, overlap, copies, true); runtime.CopyBuffer(new_buffer, overlap, copies, true);
if (immediately_free) if (immediately_free) {
runtime.Finish(); runtime.Finish();
}
DeleteBuffer(overlap_id, true); DeleteBuffer(overlap_id, true);
} }
@ -1678,8 +1681,6 @@ void BufferCache<P>::DeleteBuffer(BufferId buffer_id, bool do_not_mark) {
} }
Unregister(buffer_id); Unregister(buffer_id);
if (!do_not_mark || !immediately_free)
delayed_destruction_ring.Push(std::move(slot_buffers[buffer_id])); delayed_destruction_ring.Push(std::move(slot_buffers[buffer_id]));
slot_buffers.erase(buffer_id); slot_buffers.erase(buffer_id);

View file

@ -159,11 +159,7 @@ template <class P>
class BufferCache : public VideoCommon::ChannelSetupCaches<BufferCacheChannelInfo> { class BufferCache : public VideoCommon::ChannelSetupCaches<BufferCacheChannelInfo> {
// Page size for caching purposes. // Page size for caching purposes.
// This is unrelated to the CPU page size and it can be changed as it seems optimal. // This is unrelated to the CPU page size and it can be changed as it seems optimal.
#ifdef ANDROID
static constexpr u32 CACHING_PAGEBITS = 12;
#else
static constexpr u32 CACHING_PAGEBITS = 16; static constexpr u32 CACHING_PAGEBITS = 16;
#endif
static constexpr u64 CACHING_PAGESIZE = u64{1} << CACHING_PAGEBITS; static constexpr u64 CACHING_PAGESIZE = u64{1} << CACHING_PAGEBITS;
static constexpr bool IS_OPENGL = P::IS_OPENGL; static constexpr bool IS_OPENGL = P::IS_OPENGL;
@ -177,15 +173,9 @@ class BufferCache : public VideoCommon::ChannelSetupCaches<BufferCacheChannelInf
static constexpr bool SEPARATE_IMAGE_BUFFERS_BINDINGS = P::SEPARATE_IMAGE_BUFFER_BINDINGS; static constexpr bool SEPARATE_IMAGE_BUFFERS_BINDINGS = P::SEPARATE_IMAGE_BUFFER_BINDINGS;
static constexpr bool USE_MEMORY_MAPS_FOR_UPLOADS = P::USE_MEMORY_MAPS_FOR_UPLOADS; static constexpr bool USE_MEMORY_MAPS_FOR_UPLOADS = P::USE_MEMORY_MAPS_FOR_UPLOADS;
#ifdef ANDROID
static constexpr s64 DEFAULT_EXPECTED_MEMORY = 512_MiB;
static constexpr s64 DEFAULT_CRITICAL_MEMORY = 1_GiB;
static constexpr s64 TARGET_THRESHOLD = 3_GiB;
#else
static constexpr s64 DEFAULT_EXPECTED_MEMORY = 512_MiB; static constexpr s64 DEFAULT_EXPECTED_MEMORY = 512_MiB;
static constexpr s64 DEFAULT_CRITICAL_MEMORY = 1_GiB; static constexpr s64 DEFAULT_CRITICAL_MEMORY = 1_GiB;
static constexpr s64 TARGET_THRESHOLD = 4_GiB; static constexpr s64 TARGET_THRESHOLD = 4_GiB;
#endif
// Debug Flags. // Debug Flags.
@ -461,12 +451,7 @@ private:
Tegra::MaxwellDeviceMemoryManager& device_memory; Tegra::MaxwellDeviceMemoryManager& device_memory;
Common::SlotVector<Buffer> slot_buffers; Common::SlotVector<Buffer> slot_buffers;
#ifdef ANDROID DelayedDestructionRing<Buffer, 8> delayed_destruction_ring;
static constexpr size_t TICKS_TO_DESTROY = 6;
#else
static constexpr size_t TICKS_TO_DESTROY = 8;
#endif
DelayedDestructionRing<Buffer, TICKS_TO_DESTROY> delayed_destruction_ring;
const Tegra::Engines::DrawManager::IndirectParams* current_draw_indirect{}; const Tegra::Engines::DrawManager::IndirectParams* current_draw_indirect{};

View file

@ -1,6 +1,3 @@
// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: 2021 yuzu Emulator Project // SPDX-FileCopyrightText: 2021 yuzu Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later // SPDX-License-Identifier: GPL-3.0-or-later
@ -21,11 +18,9 @@ Host1x::~Host1x() = default;
void Host1x::StartDevice(s32 fd, ChannelType type, u32 syncpt) { void Host1x::StartDevice(s32 fd, ChannelType type, u32 syncpt) {
switch (type) { switch (type) {
case ChannelType::NvDec: case ChannelType::NvDec:
std::call_once(nvdec_first_init, []() {std::this_thread::sleep_for(std::chrono::milliseconds{500});}); // HACK: For Astroneer
devices[fd] = std::make_unique<Tegra::Host1x::Nvdec>(*this, fd, syncpt, frame_queue); devices[fd] = std::make_unique<Tegra::Host1x::Nvdec>(*this, fd, syncpt, frame_queue);
break; break;
case ChannelType::VIC: case ChannelType::VIC:
std::call_once(vic_first_init, []() {std::this_thread::sleep_for(std::chrono::milliseconds{500});}); // HACK: For Astroneer
devices[fd] = std::make_unique<Tegra::Host1x::Vic>(*this, fd, syncpt, frame_queue); devices[fd] = std::make_unique<Tegra::Host1x::Vic>(*this, fd, syncpt, frame_queue);
break; break;
default: default:

View file

@ -1,6 +1,3 @@
// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: 2021 yuzu Emulator Project // SPDX-FileCopyrightText: 2021 yuzu Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later // SPDX-License-Identifier: GPL-3.0-or-later
@ -204,8 +201,6 @@ private:
std::unique_ptr<Common::FlatAllocator<u32, 0, 32>> allocator; std::unique_ptr<Common::FlatAllocator<u32, 0, 32>> allocator;
FrameQueue frame_queue; FrameQueue frame_queue;
std::unordered_map<s32, std::unique_ptr<CDmaPusher>> devices; std::unordered_map<s32, std::unique_ptr<CDmaPusher>> devices;
std::once_flag nvdec_first_init;
std::once_flag vic_first_init;
}; };
} // namespace Tegra::Host1x } // namespace Tegra::Host1x

View file

@ -110,17 +110,10 @@ class TextureCache : public VideoCommon::ChannelSetupCaches<TextureCacheChannelI
static constexpr size_t UNSET_CHANNEL{std::numeric_limits<size_t>::max()}; static constexpr size_t UNSET_CHANNEL{std::numeric_limits<size_t>::max()};
#ifdef ANDROID
static constexpr s64 TARGET_THRESHOLD = 3_GiB;
static constexpr s64 DEFAULT_EXPECTED_MEMORY = 1_GiB + 125_MiB;
static constexpr s64 DEFAULT_CRITICAL_MEMORY = 1_GiB + 625_MiB;
static constexpr size_t GC_EMERGENCY_COUNTS = 2;
#else
static constexpr s64 TARGET_THRESHOLD = 4_GiB; static constexpr s64 TARGET_THRESHOLD = 4_GiB;
static constexpr s64 DEFAULT_EXPECTED_MEMORY = 1_GiB + 125_MiB; static constexpr s64 DEFAULT_EXPECTED_MEMORY = 1_GiB + 125_MiB;
static constexpr s64 DEFAULT_CRITICAL_MEMORY = 1_GiB + 625_MiB; static constexpr s64 DEFAULT_CRITICAL_MEMORY = 1_GiB + 625_MiB;
static constexpr size_t GC_EMERGENCY_COUNTS = 2; static constexpr size_t GC_EMERGENCY_COUNTS = 2;
#endif
using Runtime = typename P::Runtime; using Runtime = typename P::Runtime;
using Image = typename P::Image; using Image = typename P::Image;
@ -486,11 +479,7 @@ private:
}; };
Common::LeastRecentlyUsedCache<LRUItemParams> lru_cache; Common::LeastRecentlyUsedCache<LRUItemParams> lru_cache;
#ifdef ANDROID
static constexpr size_t TICKS_TO_DESTROY = 6;
#else
static constexpr size_t TICKS_TO_DESTROY = 8; static constexpr size_t TICKS_TO_DESTROY = 8;
#endif
DelayedDestructionRing<Image, TICKS_TO_DESTROY> sentenced_images; DelayedDestructionRing<Image, TICKS_TO_DESTROY> sentenced_images;
DelayedDestructionRing<ImageView, TICKS_TO_DESTROY> sentenced_image_view; DelayedDestructionRing<ImageView, TICKS_TO_DESTROY> sentenced_image_view;
DelayedDestructionRing<Framebuffer, TICKS_TO_DESTROY> sentenced_framebuffers; DelayedDestructionRing<Framebuffer, TICKS_TO_DESTROY> sentenced_framebuffers;

View file

@ -275,6 +275,7 @@ vk::Buffer MemoryAllocator::CreateBuffer(const VkBufferCreateInfo& ci, MemoryUsa
if (result == VK_ERROR_OUT_OF_DEVICE_MEMORY) { if (result == VK_ERROR_OUT_OF_DEVICE_MEMORY) {
LOG_ERROR(Render_Vulkan, "Out of memory creating buffer (size: {})", ci.size); LOG_ERROR(Render_Vulkan, "Out of memory creating buffer (size: {})", ci.size);
} }
vmaGetAllocationMemoryProperties(allocator, allocation, &property_flags); vmaGetAllocationMemoryProperties(allocator, allocation, &property_flags);
u8* data = reinterpret_cast<u8*>(alloc_info.pMappedData); u8* data = reinterpret_cast<u8*>(alloc_info.pMappedData);