diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt index 21a159676d..b75fb8ee78 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt @@ -25,7 +25,6 @@ enum class BooleanSetting(override val key: String) : AbstractBooleanSetting { RENDERER_ASYNCHRONOUS_SHADERS("use_asynchronous_shaders"), RENDERER_FAST_GPU("use_fast_gpu_time"), RENDERER_REACTIVE_FLUSHING("use_reactive_flushing"), - RENDERER_EARLY_RELEASE_FENCES("early_release_fences"), SYNC_MEMORY_OPERATIONS("sync_memory_operations"), BUFFER_REORDER_DISABLE("disable_buffer_reorder"), RENDERER_DEBUG("debug"), diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/IntSetting.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/IntSetting.kt index 21aad8b5d1..bd22682806 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/IntSetting.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/IntSetting.kt @@ -27,6 +27,7 @@ enum class IntSetting(override val key: String) : AbstractIntSetting { RENDERER_SCREEN_LAYOUT("screen_layout"), RENDERER_ASPECT_RATIO("aspect_ratio"), RENDERER_OPTIMIZE_SPIRV_OUTPUT("optimize_spirv_output"), + RENDERER_FENCE_RELEASE_MODE("fence_release_mode"), DMA_ACCURACY("dma_accuracy"), AUDIO_OUTPUT_ENGINE("output_engine"), MAX_ANISOTROPY("max_anisotropy"), diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/view/SettingsItem.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/view/SettingsItem.kt index 062038aa44..af41911b86 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/view/SettingsItem.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/view/SettingsItem.kt @@ -681,10 +681,12 @@ abstract class SettingsItem( ) ) put( - SwitchSetting( - BooleanSetting.RENDERER_EARLY_RELEASE_FENCES, - titleId = R.string.renderer_early_release_fences, - descriptionId = R.string.renderer_early_release_fences_description + SingleChoiceSetting( + IntSetting.RENDERER_FENCE_RELEASE_MODE, + titleId = R.string.renderer_fence_release_mode, + descriptionId = R.string.renderer_fence_release_mode_description, + choicesId = R.array.fenceReleaseModeNames, + valuesId = R.array.fenceReleaseModeValues ) ) put( diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt index 672bcd492c..d4a8f7d179 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt @@ -447,7 +447,7 @@ class SettingsFragmentPresenter( add(HeaderSetting(R.string.veil_renderer)) add(BooleanSetting.ENABLE_RAII.key) - add(BooleanSetting.RENDERER_EARLY_RELEASE_FENCES.key) + add(IntSetting.RENDERER_FENCE_RELEASE_MODE.key) add(IntSetting.DMA_ACCURACY.key) add(BooleanSetting.BUFFER_REORDER_DISABLE.key) add(BooleanSetting.FRAME_INTERPOLATION.key) diff --git a/src/android/app/src/main/res/values-ar/strings.xml b/src/android/app/src/main/res/values-ar/strings.xml index 155d165f2d..d26295096e 100644 --- a/src/android/app/src/main/res/values-ar/strings.xml +++ b/src/android/app/src/main/res/values-ar/strings.xml @@ -75,8 +75,8 @@ تبديل تخطي الإطارات لتحسين الأداء عن طريق تقليل عدد الإطارات المعروضة. هذه الميزة قيد التطوير وسيتم تمكينها في الإصدارات المستقبلية. تحسين توقيت الإطارات يضمن تسليمًا سلسًا ومتناسقًا للإطارات من خلال مزامنة التوقيت بينها، مما يقلل من التقطيع وعدم انتظام الحركة. مثالي للألعاب التي تعاني من عدم استقرار في توقيت الإطارات أو تقطع دقيق أثناء اللعب. - إطلاق الأسوار مبكرًا - يساعد في إصلاح مشكلة 0 إطار في الثانية في ألعاب مثل DKCR:HD وSubnautica Below Zero وOri 2، ولكن قد يتسبب في تعطيل التحميل أو الأداء في ألعاب Unreal Engine. + وضع تحرير السياج + محسّن: يهدف إلى إصلاح 0 إطار في الثانية في ألعاب مثل DKCR:HD وSubnautica Below Zero وOri 2 (أندرويد فقط). مؤجل: يهدف إلى إصلاح وميض النسيج كما في Ender Magnolia في الدقة العادية. محسّن آمن: مؤجل + محسّن. مزامنة عمليات الذاكرة يضمن اتساق البيانات بين عمليات الحوسبة والذاكرة. هذا الخيار قد يحل المشكلات في بعض الألعاب، ولكن قد يقلل الأداء في بعض الحالات. يبدو أن الألعاب التي تستخدم Unreal Engine 4 هي الأكثر تأثرًا. تعطيل إعادة ترتيب المخزن المؤقت diff --git a/src/android/app/src/main/res/values-ckb/strings.xml b/src/android/app/src/main/res/values-ckb/strings.xml index 1845dbbade..0e4daa0d4b 100644 --- a/src/android/app/src/main/res/values-ckb/strings.xml +++ b/src/android/app/src/main/res/values-ckb/strings.xml @@ -76,8 +76,8 @@ تێپەڕاندنی فرەیمەکان بکە بۆ باشترکردنی کارایی بە کەمکردنەوەی ژمارەی فرەیمە ڕێندرکراوەکان. ئەم تایبەتمەندییە هێشتا کاردەکرێت و لە وەشانە داهاتووەکاندا چالاکدەکرێت. تحسين توقيت الإطارات يضمن تسليمًا سلسًا ومتناسقًا للإطارات من خلال مزامنة التوقيت بينها، مما يقلل من التقطيع وعدم انتظام الحركة. مثالي للألعاب التي تعاني من عدم استقرار في توقيت الإطارات أو تقطع دقيق أثناء اللعب. - زێدەکردنی پەرستارەکان زووتر - یارمەتی دەدات لە چارەسەری 0 FPS لە یارییەکانی وەک DKCR:HD، Subnautica Below Zero و Ori 2، بەڵام ڕەنگە بارکردن یان کارایی لە یارییەکانی Unreal Engine تێکبدات. + دۆخی بڵاوکردنەوەی سێرکە + باشکراو: بۆ چارەسەری 0 FPS لە یارییەکان وەک DKCR:HD، Subnautica Below Zero و Ori 2 (تەنها Android). دواخراو: بۆ چارەسەری وەڵامدانی تێکستەر وەک Ender Magnolia لە دقتی Normal. باشکراوی سەلامەت: دواخراو + باشکراو. هاوبەشیی کردارەکانی بیرگە دڵنیایی داتا لە نێوان کردارەکانی کۆمپیوتەر و بیرگە. ئەم هەڵبژاردە کێشەکان لە هەندێک یاری چارەسەر دەکات، بەڵام لە هەندێک حاڵەت کارایی کەم دەکاتەوە. وا دیارە یارییەکانی Unreal Engine 4 زۆرترین کاریگەریان هەیە. ڕێکخستنەوەی بافر ناچالاک بکە diff --git a/src/android/app/src/main/res/values-cs/strings.xml b/src/android/app/src/main/res/values-cs/strings.xml index 484ba1fc5f..7cc5870f90 100644 --- a/src/android/app/src/main/res/values-cs/strings.xml +++ b/src/android/app/src/main/res/values-cs/strings.xml @@ -75,8 +75,8 @@ Přepínání přeskočení snímků pro zlepšení výkonu snížením počtu vykreslených snímků. Tato funkce je stále ve vývoji a bude povolena v budoucích verzích. Vylepšené časování snímků Zajišťuje plynulé a konzistentní zobrazování snímků synchronizací jejich časování, čímž snižuje trhání a nerovnoměrné animace. Ideální pro hry, které trpí nestabilitou časování snímků nebo mikrotrháním během hraní. - Uvolnit ploty brzy - Pomáhá opravit 0 FPS v hrách jako DKCR:HD, Subnautica Below Zero a Ori 2, ale může narušit načítání nebo výkon v hrách na Unreal Engine. + Režim uvolnění plotu + Optimalizováno: Určeno k opravě 0 FPS ve hrách jako DKCR:HD, Subnautica Below Zero a Ori 2 (pouze Android). Zpožděné: Určeno k opravě blikání textur jako v Ender Magnolia při normální přesnosti. Bezpečně optimalizováno: Zpožděné + Optimalizováno. Synchronizace paměťových operací Zajišťuje konzistenci dat mezi výpočetními a paměťovými operacemi. Tato volba by měla opravit problémy v některých hrách, ale může v některých případech snížit výkon. Nejvíce postižené se zdají být hry s Unreal Engine 4. Zakázat přeřazování vyrovnávací paměti diff --git a/src/android/app/src/main/res/values-de/strings.xml b/src/android/app/src/main/res/values-de/strings.xml index 821ba56399..64cf95df83 100644 --- a/src/android/app/src/main/res/values-de/strings.xml +++ b/src/android/app/src/main/res/values-de/strings.xml @@ -76,8 +76,8 @@ Aktivieren Sie Frame Skipping, um die Leistung durch Reduzierung der gerenderten Frames zu verbessern. Diese Funktion wird noch entwickelt und in zukünftigen Versionen verfügbar sein. Erweiterte Frame-Synchronisation Sorgt für eine gleichmäßige und konsistente Frame-Wiedergabe durch Synchronisierung der Frame-Zeiten, was Ruckeln und ungleichmäßige Animationen reduziert. Ideal für Spiele, die unter instabilen Frame-Zeiten oder Mikrorucklern leiden. - Zäune früher freigeben - Behebt 0 FPS in Spielen wie DKCR:HD, Subnautica Below Zero und Ori 2, kann aber Ladezeiten oder Performance in Unreal Engine-Spielen beeinträchtigen. + Zaunfreigabemodus + Optimiert: Zur Behebung von 0 FPS in Spielen wie DKCR:HD, Subnautica Below Zero und Ori 2 (nur Android). Verzögert: Zur Behebung von Texturflackern wie in Ender Magnolia bei normaler Genauigkeit. Optimiert Sicher: Verzögert + Optimiert. Speicheroperationen synchronisieren Stellt die Datenkonsistenz zwischen Compute- und Speicheroperationen sicher. Diese Option sollte Probleme in einigen Spielen beheben, kann aber in einigen Fällen die Leistung verringern. Spiele mit Unreal Engine 4 scheinen am stärksten betroffen zu sein. Puffer-Neuanordnung deaktivieren diff --git a/src/android/app/src/main/res/values-es/strings.xml b/src/android/app/src/main/res/values-es/strings.xml index 9db08e1425..2bb2eaa390 100644 --- a/src/android/app/src/main/res/values-es/strings.xml +++ b/src/android/app/src/main/res/values-es/strings.xml @@ -76,8 +76,8 @@ Activa o desactiva el salto de fotogramas para mejorar el rendimiento reduciendo el número de fotogramas renderizados. Esta función está en desarrollo y se habilitará en futuras versiones. Sincronización de fotogramas mejorada Garantiza una reproducción suave y consistente de fotogramas sincronizando sus tiempos, reduciendo el tartamudeo y animaciones irregulares. Ideal para juegos con problemas de sincronización de fotogramas o microtartamudeos. - Liberar vallas antes - Ayuda a solucionar 0 FPS en juegos como DKCR:HD, Subnautica Below Zero y Ori 2, pero puede afectar la carga o rendimiento en juegos de Unreal Engine. + Modo de liberación de cerca + Optimizado: Diseñado para corregir 0 FPS en juegos como DKCR:HD, Subnautica Below Zero y Ori 2 (solo Android). Retardado: Diseñado para corregir parpadeo de texturas como en Ender Magnolia en precisión Normal. Optimizado Seguro: Retardado + Optimizado. Sincronizar operaciones de memoria Garantiza la consistencia de datos entre operaciones de computación y memoria. Esta opción debería solucionar problemas en algunos juegos, pero puede reducir el rendimiento en algunos casos. Los juegos con Unreal Engine 4 parecen ser los más afectados. Desactivar reordenamiento de búfer diff --git a/src/android/app/src/main/res/values-fa/strings.xml b/src/android/app/src/main/res/values-fa/strings.xml index 91fa4bd5c2..f1e9573fe7 100644 --- a/src/android/app/src/main/res/values-fa/strings.xml +++ b/src/android/app/src/main/res/values-fa/strings.xml @@ -76,8 +76,8 @@ با فعال کردن رد کردن فریم‌ها، عملکرد را با کاهش تعداد فریم‌های رندر شده بهبود دهید. این قابلیت در حال توسعه است و در نسخه‌های آینده فعال خواهد شد. زمان‌بندی پیشرفته فریم‌ها ارسال یکنواخت و پایدار فریم‌ها را با همگام‌سازی زمان بین آن‌ها تضمین می‌کند، که منجر به کاهش لرزش و انیمیشن‌های ناهموار می‌شود. برای بازی‌هایی که ناپایداری در زمان‌بندی فریم‌ها یا میکرو لرزش در حین بازی دارند ایده‌آل است - رهاسازی حصارها زودتر - به رفع مشکل 0 فریم بر ثانیه در بازی‌هایی مانند DKCR:HD، Subnautica Below Zero و Ori 2 کمک می‌کند، اما ممکن است بارگذاری یا عملکرد بازی‌های Unreal Engine را مختل کند. + حالت آزادسازی حصار + بهینه‌شده: برای رفع 0 FPS در بازی‌هایی مانند DKCR:HD، Subnautica Below Zero و Ori 2 (فقط اندروید). تاخیری: برای رفع چشمک زدن بافت مانند Ender Magnolia در دقت معمولی. بهینه‌شده ایمن: تاخیری + بهینه‌شده. همگام‌سازی عملیات حافظه اطمینان از سازگاری داده‌ها بین عملیات محاسباتی و حافظه. این گزینه ممکن است مشکلات برخی بازی‌ها را رفع کند، اما در برخی موارد ممکن است عملکرد را کاهش دهد. به نظر می‌رسد بازی‌های با Unreal Engine 4 بیشترین تأثیر را داشته باشند. غیرفعال کردن مرتب‌سازی مجدد بافر diff --git a/src/android/app/src/main/res/values-fr/strings.xml b/src/android/app/src/main/res/values-fr/strings.xml index a7139ddbf6..bb1c1a9e17 100644 --- a/src/android/app/src/main/res/values-fr/strings.xml +++ b/src/android/app/src/main/res/values-fr/strings.xml @@ -76,8 +76,8 @@ Activez ou désactivez le saut d\'images pour améliorer les performances en réduisant le nombre d\'images affichées. Cette fonctionnalité est en cours de développement et sera activée dans les futures versions. Synchronisation avancée des frames Assure une diffusion fluide et régulière des frames en synchronisant leur timing, réduisant ainsi les saccades et les animations irrégulières. Idéal pour les jeux souffrant d`instabilité de timing des frames ou de micro-saccades pendant le jeu. - Libérer les barrières plus tôt - Résout les problèmes de 0 FPS dans des jeux comme DKCR:HD, Subnautica Below Zero et Ori 2, mais peut perturber le chargement ou les performances des jeux Unreal Engine. + Mode de libération de clôture + Optimisé : Conçu pour corriger 0 FPS dans des jeux comme DKCR:HD, Subnautica Below Zero et Ori 2 (Android uniquement). Retardé : Conçu pour corriger le scintillement des textures comme dans Ender Magnolia en précision normale. Optimisé sécurisé : Retardé + Optimisé. Synchroniser les opérations mémoire Garantit la cohérence des données entre les opérations de calcul et de mémoire. Cette option devrait résoudre les problèmes dans certains jeux, mais peut réduire les performances dans certains cas. Les jeux utilisant Unreal Engine 4 semblent être les plus affectés. Désactiver le réordonnancement du tampon diff --git a/src/android/app/src/main/res/values-he/strings.xml b/src/android/app/src/main/res/values-he/strings.xml index 63aaee043e..defae56345 100644 --- a/src/android/app/src/main/res/values-he/strings.xml +++ b/src/android/app/src/main/res/values-he/strings.xml @@ -76,8 +76,8 @@ החלף דילוג על פריימים כדי לשפר ביצועים על ידי הפחתת מספר הפריימים המוצגים. תכונה זו עדיין בפיתוח ותופעל בגרסאות עתידיות. סנכרון פריימים מתקדם מבטיח אספקה חלקה ועקבית של פריימים על ידי סנכרון התזמון ביניהם, מפחית קפיצות ואנימציה לא אחידה. אידיאלי למשחקים עם בעיות בתזמון פריימים או מיקרו-קפיצות במהלך המשחק. - שחרר גדרות מוקדם - עוזר לתקן 0 FPS במשחקים כמו DKCR:HD, Subnautica Below Zero ו-Ori 2, אך עלול לפגוע בטעינה או בביצועים במשחקי Unreal Engine. + מצב שחרור גדר + מותאם: נועד לתקן 0 FPS במשחקים כמו DKCR:HD, Subnautica Below Zero ו-Ori 2 (אנדרואיד בלבד). מושהה: נועד לתקן הבהוב טקסטורות כמו ב-Ender Magnolia בדיוק רגיל. מותאם בטוח: מושהה + מותאם. סנכרון פעולות זיכרון מבטיח עקביות נתונים בין פעולות חישוב וזיכרון. אפשרות זו אמורה לתקן בעיות במשחקים מסוימים, אך עלולה להפחית ביצועים במקרים מסוימים. נראה שהמשחקים עם Unreal Engine 4 הם המושפעים ביותר. השבת סידור מחדש של חוצץ diff --git a/src/android/app/src/main/res/values-hu/strings.xml b/src/android/app/src/main/res/values-hu/strings.xml index 15dd00997b..ad57988992 100644 --- a/src/android/app/src/main/res/values-hu/strings.xml +++ b/src/android/app/src/main/res/values-hu/strings.xml @@ -76,8 +76,8 @@ Kapcsolja be a képkihagyást a teljesítmény javításához a renderelt képkockák számának csökkentésével. Ez a funkció még fejlesztés alatt áll, és a jövőbeli kiadásokban lesz elérhető. Továbbfejlesztett Képkocka-időzítés Biztosítja a képkockák sima és egyenletes kézbesítését azok időzítésének szinkronizálásával, csökkentve a megakadásokat és egyenetlen animációkat. Ideális azokhoz a játékokhoz, amelyek képkocka-időzítési instabilitást vagy mikro-reccsenést tapasztalnak játék közben. - Korai kerítés-felszabadítás - Segít javítani a 0 FPS-t olyan játékokban, mint a DKCR:HD, Subnautica Below Zero és az Ori 2, de ronthatja az Unreal Engine játékok betöltését vagy teljesítményét. + Kerítéskioldási mód + Optimalizált: 0 FPS javítására, például DKCR:HD, Subnautica Below Zero és Ori 2 játékokban (csak Android). Késleltetett: Textúra villogás javítására, mint az Ender Magnolia normál pontosságban. Biztonságos optimalizált: Késleltetett + Optimalizált. Memória-műveletek szinkronizálása Biztosítja az adatok konzisztenciáját a számítási és memória-műveletek között. Ez az opciónak javítania kell néhány játékban előforduló problémát, de bizonyos esetekben csökkentheti a teljesítményt. Az Unreal Engine 4-et használó játékok látszanak a legérintettebbek. Puffer újrarendezés letiltása diff --git a/src/android/app/src/main/res/values-id/strings.xml b/src/android/app/src/main/res/values-id/strings.xml index 7daa4a8e94..69ae6ee179 100644 --- a/src/android/app/src/main/res/values-id/strings.xml +++ b/src/android/app/src/main/res/values-id/strings.xml @@ -76,8 +76,8 @@ Aktifkan atau nonaktifkan frame skipping untuk meningkatkan performa dengan mengurangi jumlah frame yang dirender. Fitur ini masih dalam pengembangan dan akan diaktifkan di rilis mendatang. Penyelarasan Frame Tingkat Lanjut Memastikan pengiriman frame yang halus dan konsisten dengan menyinkronkan waktu antar frame, mengurangi stuttering dan animasi tidak rata. Ideal untuk game yang mengalami ketidakstabilan waktu frame atau micro-stutter selama gameplay. - Lepas Pagar Lebih Awal - Membantu memperbaiki 0 FPS di game seperti DKCR:HD, Subnautica Below Zero dan Ori 2, tapi mungkin mengganggu loading atau performa di game Unreal Engine. + Mode Pelepasan Pagar + Dioptimalkan: Ditujukan untuk memperbaiki 0 FPS di game seperti DKCR:HD, Subnautica Below Zero, dan Ori 2 (hanya Android). Tertunda: Ditujukan untuk memperbaiki kedipan tekstur seperti di Ender Magnolia pada akurasi Normal. Dioptimalkan Aman: Tertunda + Dioptimalkan. Sinkronisasi Operasi Memori Memastikan konsistensi data antara operasi komputasi dan memori. Opsi ini seharusnya memperbaiki masalah di beberapa game, tetapi mungkin mengurangi performa dalam beberapa kasus. Game dengan Unreal Engine 4 tampaknya yang paling terpengaruh. Nonaktifkan Penyusunan Ulang Buffer diff --git a/src/android/app/src/main/res/values-it/strings.xml b/src/android/app/src/main/res/values-it/strings.xml index 66446eae34..3a0adc6534 100644 --- a/src/android/app/src/main/res/values-it/strings.xml +++ b/src/android/app/src/main/res/values-it/strings.xml @@ -76,8 +76,8 @@ Attiva o disattiva il salto dei fotogrammi per migliorare le prestazioni riducendo il numero di fotogrammi renderizzati. Questa funzionalità è ancora in sviluppo e verrà abilitata nelle versioni future. Sincronizzazione avanzata fotogrammi Garantisce una consegna fluida e costante dei fotogrammi sincronizzandone i tempi, riducendo scatti e animazioni irregolari. Ideale per giochi che presentano instabilità nei tempi dei fotogrammi o micro-scatti durante il gameplay. - Rilascia le barriere prima - Risolve problemi di 0 FPS in giochi come DKCR:HD, Subnautica Below Zero e Ori 2, ma potrebbe compromettere caricamento o prestazioni in giochi Unreal Engine. + Modalità rilascio recinzione + Ottimizzato: Progettato per correggere 0 FPS in giochi come DKCR:HD, Subnautica Below Zero e Ori 2 (solo Android). Ritardato: Progettato per correggere lo sfarfallio delle texture come in Ender Magnolia in precisione Normale. Ottimizzato Sicuro: Ritardato + Ottimizzato. Sincronizza operazioni di memoria Garantisce la coerenza dei dati tra le operazioni di calcolo e memoria. Questa opzione dovrebbe risolvere problemi in alcuni giochi, ma potrebbe ridurre le prestazioni in alcuni casi. I giochi con Unreal Engine 4 sembrano essere i più colpiti. Disabilita riordino buffer diff --git a/src/android/app/src/main/res/values-ja/strings.xml b/src/android/app/src/main/res/values-ja/strings.xml index 2090aa5f74..00f8328c45 100644 --- a/src/android/app/src/main/res/values-ja/strings.xml +++ b/src/android/app/src/main/res/values-ja/strings.xml @@ -76,8 +76,8 @@ フレームスキップを切り替えて、レンダリングされるフレーム数を減らしパフォーマンスを向上させます。この機能は開発中であり、今後のリリースで有効になります。 高度なフレーム同期 フレーム間のタイミングを同期させることで、スムーズで一貫したフレーム配信を確保し、カクつきや不均一なアニメーションを軽減します。フレームタイミングの不安定さやマイクロスタッターが発生するゲームに最適です。 - フェンスを早期に解放 - DKCR:HD、Subnautica Below Zero、Ori 2などのゲームで0 FPSを修正しますが、Unreal Engineゲームの読み込みやパフォーマンスに影響する可能性があります。 + フェンス解放モード + 最適化: DKCR:HD、Subnautica Below Zero、Ori 2 などのゲームで 0 FPS を修正するため(Android のみ)。遅延: Ender Magnolia のようなテクスチャのちらつきを通常精度で修正するため。安全な最適化: 遅延 + 最適化。 メモリ操作の同期 計算処理とメモリ操作間のデータ一貫性を保証します。 このオプションは一部のゲームの問題を修正しますが、場合によってはパフォーマンスが低下する可能性があります。 Unreal Engine 4のゲームが最も影響を受けるようです。 バッファの再並べ替えを無効化 diff --git a/src/android/app/src/main/res/values-ko/strings.xml b/src/android/app/src/main/res/values-ko/strings.xml index d73dc53987..4e16b00736 100644 --- a/src/android/app/src/main/res/values-ko/strings.xml +++ b/src/android/app/src/main/res/values-ko/strings.xml @@ -76,8 +76,8 @@ 렌더링되는 프레임 수를 줄여 성능을 향상시키기 위해 프레임 스킵을 전환합니다. 이 기능은 현재 개발 중이며 향후 출시 버전에서 활성화될 예정입니다. 향상된 프레임 페이싱 프레임 간 타이밍을 동기화하여 부드럽고 일관된 프레임 전달을 보장하며, 끊김과 불균일한 애니메이션을 줄입니다. 프레임 타이밍 불안정이나 게임 플레이 중 미세 끊김이 발생하는 게임에 이상적입니다. - 펜스 조기 해제 - DKCR:HD, Subnautica Below Zero, Ori 2 등의 게임에서 0 FPS 현상을 해결하지만, Unreal Engine 게임의 로딩이나 성능에 문제를 일으킬 수 있습니다. + 펜스 해제 모드 + 최적화: DKCR:HD, Subnautica Below Zero, Ori 2와 같은 게임에서 0 FPS를 수정하기 위함 (Android 전용). 지연: Ender Magnolia의 텍스처 깜빡임을 Normal 정확도에서 수정하기 위함. 안전 최적화: 지연 + 최적화. 메모리 작업 동기화 컴퓨팅 및 메모리 작업 간 데이터 일관성을 보장합니다. 이 옵션은 일부 게임의 문제를 해결할 수 있지만 경우에 따라 성능이 저하될 수 있습니다. Unreal Engine 4 게임이 가장 큰 영향을 받는 것으로 보입니다. 버퍼 재정렬 비활성화 diff --git a/src/android/app/src/main/res/values-nb/strings.xml b/src/android/app/src/main/res/values-nb/strings.xml index 61fa5792e5..e5c3baac52 100644 --- a/src/android/app/src/main/res/values-nb/strings.xml +++ b/src/android/app/src/main/res/values-nb/strings.xml @@ -76,8 +76,8 @@ Slå av/på frame skipping for å forbedre ytelsen ved å redusere antall renderte bilder. Denne funksjonen er fortsatt under utvikling og vil bli aktivert i fremtidige versjoner. Avansert bildevindu-synkronisering Sikrer jevn og konsekvent bildelevering ved å synkronisere tiden mellom bilder, noe som reduserer hakking og ujevn animasjon. Ideelt for spill som opplever ustabil bildetid eller mikro-hakk under spilling. - Frigjør gjerder tidlig - Løser 0 FPS i spill som DKCR:HD, Subnautica Below Zero og Ori 2, men kan forårsake problemer med lasting eller ytelse i Unreal Engine-spill. + Gjerdefrigjøringsmodus + Optimalisert: Ment for å fikse 0 FPS i spill som DKCR:HD, Subnautica Below Zero og Ori 2 (kun Android). Forsinket: Ment for å fikse teksturflimmer som i Ender Magnolia på Normal nøyaktighet. Optimalisert Sikker: Forsinket + Optimalisert. Synkroniser minneoperasjoner Sikrer datakonsistens mellom beregnings- og minneoperasjoner. Dette alternativet bør fikse problemer i noen spill, men kan redusere ytelsen i noen tilfeller. Spill med Unreal Engine 4 ser ut til å være de mest berørte. Deaktiver bufferomorganisering diff --git a/src/android/app/src/main/res/values-pl/strings.xml b/src/android/app/src/main/res/values-pl/strings.xml index d640112fca..a65adadf79 100644 --- a/src/android/app/src/main/res/values-pl/strings.xml +++ b/src/android/app/src/main/res/values-pl/strings.xml @@ -76,8 +76,8 @@ Włącz lub wyłącz pomijanie klatek, aby poprawić wydajność poprzez zmniejszenie liczby renderowanych klatek. Ta funkcja jest wciąż w fazie rozwoju i zostanie włączona w przyszłych wersjach. Zaawansowana synchronizacja klatek Zapewnia płynne i spójne wyświetlanie klatek poprzez synchronizację ich czasu, redukując zacinanie i nierówną animację. Idealne dla gier z niestabilnym czasem klatek lub mikro-zacinaniem podczas rozgrywki. - Wcześniejsze zwalnianie zabezpieczeń - Pomaga naprawić 0 FPS w grach takich jak DKCR:HD, Subnautica Below Zero i Ori 2, ale może zaburzyć ładowanie lub wydajność w grach Unreal Engine. + Tryb zwalniania ogrodzenia + Zoptymalizowany: Przeznaczony do naprawy 0 FPS w grach takich jak DKCR:HD, Subnautica Below Zero i Ori 2 (tylko Android). Opóźniony: Przeznaczony do naprawy migotania tekstur jak w Ender Magnolia przy normalnej precyzji. Zoptymalizowany Bezpieczny: Opóźniony + Zoptymalizowany. Synchronizuj operacje pamięci Zapewnia spójność danych między operacjami obliczeniowymi i pamięciowymi. Ta opcja powinna naprawiać problemy w niektórych grach, ale może zmniejszyć wydajność w niektórych przypadkach. Gry z Unreal Engine 4 wydają się być najbardziej dotknięte. Wyłącz przestawianie bufora diff --git a/src/android/app/src/main/res/values-pt-rBR/strings.xml b/src/android/app/src/main/res/values-pt-rBR/strings.xml index d0ec24f453..265c2c3d0d 100644 --- a/src/android/app/src/main/res/values-pt-rBR/strings.xml +++ b/src/android/app/src/main/res/values-pt-rBR/strings.xml @@ -76,8 +76,8 @@ Ative ou desative o pulo de quadros para melhorar o desempenho reduzindo o número de quadros renderizados. Este recurso ainda está em desenvolvimento e será habilitado em versões futuras. Sincronização avançada de quadros Garante entrega suave e consistente de quadros sincronizando seu tempo, reduzindo engasgos e animações irregulares. Ideal para jogos com instabilidade no tempo de quadros ou micro-engasgos durante a jogatina. - Liberar cercas antecipadamente - Ajuda a corrigir 0 FPS em jogos como DKCR:HD, Subnautica Below Zero e Ori 2, mas pode prejudicar carregamento ou desempenho em jogos Unreal Engine. + Modo de Liberação de Cerca + Otimizado: Destinado a corrigir 0 FPS em jogos como DKCR:HD, Subnautica Below Zero e Ori 2 (apenas Android). Atrasado: Destinado a corrigir cintilação de textura como em Ender Magnolia na precisão Normal. Otimizado Seguro: Atrasado + Otimizado. Sincronizar Operações de Memória Garante a consistência dos dados entre operações de computação e memória. Esta opção deve corrigir problemas em alguns jogos, mas pode reduzir o desempenho em alguns casos. Os jogos com Unreal Engine 4 parecem ser os mais afetados. Desativar reorganização de buffer diff --git a/src/android/app/src/main/res/values-pt-rPT/strings.xml b/src/android/app/src/main/res/values-pt-rPT/strings.xml index 4e0fc4167a..7e8ff87e04 100644 --- a/src/android/app/src/main/res/values-pt-rPT/strings.xml +++ b/src/android/app/src/main/res/values-pt-rPT/strings.xml @@ -76,8 +76,8 @@ Ative ou desative o salto de frames para melhorar o desempenho reduzindo o número de frames renderizados. Esta funcionalidade ainda está em desenvolvimento e será ativada em versões futuras. Sincronização avançada de frames Garante uma entrega suave e consistente de frames sincronizando o seu tempo, reduzindo engasgadelas e animações irregulares. Ideal para jogos que experienciam instabilidade no tempo de frames ou micro-engasgadelas durante o jogo. - Libertar barreiras antecipadamente - Ajuda a corrigir 0 FPS em jogos como DKCR:HD, Subnautica Below Zero e Ori 2, mas pode afetar carregamento ou desempenho em jogos Unreal Engine. + Modo de Libertação de Cerca + Otimizado: Destinado a corrigir 0 FPS em jogos como DKCR:HD, Subnautica Below Zero e Ori 2 (apenas Android). Atrasado: Destinado a corrigir cintilação de textura como em Ender Magnolia na precisão Normal. Otimizado Seguro: Atrasado + Otimizado. Sincronizar Operações de Memória Garante a consistência dos dados entre operações de computação e memória. Esta opção deve corrigir problemas em alguns jogos, mas pode reduzir o desempenho nalguns casos. Os jogos com Unreal Engine 4 parecem ser os mais afectados. Desativar reordenação de buffer diff --git a/src/android/app/src/main/res/values-ru/strings.xml b/src/android/app/src/main/res/values-ru/strings.xml index 658286152b..e56c34e62b 100644 --- a/src/android/app/src/main/res/values-ru/strings.xml +++ b/src/android/app/src/main/res/values-ru/strings.xml @@ -76,8 +76,8 @@ Метод автоматического управления ресурсами в Vulkan, который обеспечивает правильное освобождение ресурсов при их ненадобности, но может вызывать сбои в бандл-играх. Улучшенная синхронизация кадров Обеспечивает плавную и стабильную подачу кадров за счет синхронизации их времени, уменьшая подтормаживания и неравномерную анимацию. Идеально для игр с нестабильным временем кадров или микро-подтормаживаниями во время игры. - Ранний релиз ограждений - Помогает исправить 0 FPS в играх типа DKCR:HD, Subnautica Below Zero и Ori 2, но может нарушить загрузку или производительность в играх на Unreal Engine. + Режим освобождения ограждения + Оптимизировано: Предназначено для исправления 0 FPS в играх, таких как DKCR:HD, Subnautica Below Zero и Ori 2 (только Android). Задержка: Для исправления мерцания текстур, как в Ender Magnolia на обычной точности. Безопасная оптимизация: Задержка + Оптимизация. Синхронизация операций с памятью Обеспечивает согласованность данных между вычислительными операциями и операциями с памятью. Эта опция должна исправлять проблемы в некоторых играх, но может снижать производительность в некоторых случаях. Наиболее сильно это затрагивает игры на Unreal Engine 4. Отключить переупорядочивание буфера diff --git a/src/android/app/src/main/res/values-sr/strings.xml b/src/android/app/src/main/res/values-sr/strings.xml index 18612333f9..e1938ea2cf 100644 --- a/src/android/app/src/main/res/values-sr/strings.xml +++ b/src/android/app/src/main/res/values-sr/strings.xml @@ -85,8 +85,8 @@ Метод аутоматског управљања ресурсима у Vulkan-у који осигурава правилно ослобађање ресурса када више нису потребни, али може изазвати падове у пакованим играма. Побољшани оквирни пејсинг Осигурава глатку и доследан испоруку оквира синхронизацијом времена између оквира, смањење муцања и неуједначене анимације. Идеално за игре које доживљавају временски оквир нестабилност или микро-штитнике током играња. - Ranije oslobađanje ograda - Pomaže u popravci 0 FPS u igrama kao što su DKCR:HD, Subnautica Below Zero i Ori 2, ali može oštetiti učitavanje ili performanse u Unreal Engine igrama. + Режим ослобађања ограде + Оптимизовано: За поправку 0 FPS у играма као што су DKCR:HD, Subnautica Below Zero и Ori 2 (само Android). Одложено: За поправку треперења текстура као у Ender Magnolia на нормалној тачности. Безбедно оптимизовано: Одложено + Оптимизовано. Синхронизација меморијских операција Осигурава конзистентност података између рачунских и меморијских операција. Ова опција би требало да поправи проблеме у неким играма, али може смањити перформансе у неким случајевима. Чини се да су игре са Unreal Engine 4 највише погођене. Онемогући преуређивање бафера diff --git a/src/android/app/src/main/res/values-uk/strings.xml b/src/android/app/src/main/res/values-uk/strings.xml index 830e1f0ef9..e784a79653 100644 --- a/src/android/app/src/main/res/values-uk/strings.xml +++ b/src/android/app/src/main/res/values-uk/strings.xml @@ -76,8 +76,8 @@ Увімкніть або вимкніть пропуск кадрів для покращення продуктивності за рахунок зменшення кількості візуалізованих кадрів. Ця функція ще розробляється та буде доступна у майбутніх версіях. Покращена синхронізація кадрів Забезпечує плавну та стабільну подачу кадрів шляхом синхронізації їх часу, зменшуючи підвисання та нерівномірну анімацію. Ідеально для ігор з нестабільним часом кадрів або мікро-підвисаннями під час гри. - Release fences early - Це налаштування може бути необхідним для виправлення помилок 0FPS у деяких іграх (зокрема DKCR:HD, Subnautica та Ori 2). Водночас інші ігри, особливо створені на рушії Unreal Engine, можуть працювати некоректно або взагалі не запускатися. + Режим звільнення огорожі + Оптимізовано: Призначено для виправлення 0 FPS у таких іграх, як DKCR:HD, Subnautica Below Zero та Ori 2 (тільки Android). Затримка: Для виправлення мерехтіння текстур, як у Ender Magnolia на звичайній точності. Безпечна оптимізація: Затримка + Оптимізація. Синхронізація операцій з пам\'яттю Забезпечує узгодженість даних між обчислювальними операціями та операціями з пам\'яттю. Ця опція має виправляти проблеми в деяких іграх, але може знижувати продуктивність у деяких випадках. Ігри на Unreal Engine 4, здається, найбільш постраждалі. Вимкнути переупорядкування буфера diff --git a/src/android/app/src/main/res/values-vi/strings.xml b/src/android/app/src/main/res/values-vi/strings.xml index 1c656fc7bb..62ae5ec879 100644 --- a/src/android/app/src/main/res/values-vi/strings.xml +++ b/src/android/app/src/main/res/values-vi/strings.xml @@ -76,8 +76,8 @@ Bật hoặc tắt bỏ qua khung hình để cải thiện hiệu suất bằng cách giảm số lượng khung hình được kết xuất. Tính năng này đang được phát triển và sẽ được kích hoạt trong các bản phát hành tương lai. Đồng bộ khung hình nâng cao Đảm bảo cung cấp khung hình mượt mà và ổn định bằng cách đồng bộ hóa thời gian giữa các khung hình, giảm giật lag và hoạt ảnh không đồng đều. Lý tưởng cho các trò chơi gặp vấn đề về thời gian khung hình không ổn định hoặc giật lag nhẹ trong khi chơi. - Giải phóng rào chắn sớm - Giúp sửa lỗi 0 FPS trong các trò chơi như DKCR:HD, Subnautica Below Zero và Ori 2, nhưng có thể ảnh hưởng đến tải hoặc hiệu suất trong trò chơi Unreal Engine. + Chế độ giải phóng hàng rào + Tối ưu hóa: Nhằm sửa lỗi 0 FPS trong các trò chơi như DKCR:HD, Subnautica Below Zero và Ori 2 (chỉ Android). Trì hoãn: Nhằm sửa lỗi nhấp nháy kết cấu như trong Ender Magnolia ở độ chính xác Thường. Tối ưu hóa an toàn: Trì hoãn + Tối ưu hóa. Đồng bộ hoá thao tác bộ nhớ Đảm bảo tính nhất quán dữ liệu giữa các thao tác tính toán và bộ nhớ. Tùy chọn này nên khắc phục sự cố trong một số trò chơi, nhưng có thể làm giảm hiệu suất trong một số trường hợp. Các trò chơi với Unreal Engine 4 có vẻ bị ảnh hưởng nhiều nhất. Tắt sắp xếp lại bộ đệm diff --git a/src/android/app/src/main/res/values-zh-rCN/strings.xml b/src/android/app/src/main/res/values-zh-rCN/strings.xml index f3e7d9282c..361d644fd0 100644 --- a/src/android/app/src/main/res/values-zh-rCN/strings.xml +++ b/src/android/app/src/main/res/values-zh-rCN/strings.xml @@ -75,8 +75,8 @@ 启用或禁用跳帧以减少渲染帧数,提高性能。此功能仍在开发中,将在未来版本中启用。 增强帧同步 通过同步帧间时间确保流畅一致的帧交付,减少卡顿和不均匀动画。适合存在帧时间不稳定或游戏过程中出现微卡顿的游戏。 - 提前释放围栏 - 可修复《大金刚国度:热带寒流》《深海迷航:零度之下》和《奥日2》等游戏中的0 FPS问题,但可能影响Unreal Engine游戏的加载或性能。 + 围栏释放模式 + 优化:用于修复如 DKCR:HD、Subnautica Below Zero 和 Ori 2 等游戏中的 0 FPS(仅限 Android)。延迟:用于修复如 Ender Magnolia 在普通精度下的纹理闪烁。安全优化:延迟 + 优化。 同步内存操作 确保计算和内存操作之间的数据一致性。 此选项应能修复某些游戏中的问题,但在某些情况下可能会降低性能。 使用Unreal Engine 4的游戏似乎受影响最大。 禁用缓冲重排序 diff --git a/src/android/app/src/main/res/values-zh-rTW/strings.xml b/src/android/app/src/main/res/values-zh-rTW/strings.xml index b6c17745be..e364ee890a 100644 --- a/src/android/app/src/main/res/values-zh-rTW/strings.xml +++ b/src/android/app/src/main/res/values-zh-rTW/strings.xml @@ -76,8 +76,8 @@ 啟用或停用跳幀以減少渲染幀數,提高效能。此功能仍在開發中,將在未來版本中啟用。 增強幀同步 通過同步幀間時間確保流暢一致的幀交付,減少卡頓和不均勻動畫。適合存在幀時間不穩定或遊戲過程中出現微卡頓的遊戲。 - 提前釋放圍欄 - 可修復《大金剛國度:熱帶寒流》《深海迷航:零度之下》和《奧日2》等遊戲中的0 FPS問題,但可能影響Unreal Engine遊戲的載入或效能。 + 圍欄釋放模式 + 最佳化:用於修復如 DKCR:HD、Subnautica Below Zero 和 Ori 2 等遊戲的 0 FPS(僅限 Android)。延遲:用於修復如 Ender Magnolia 在普通精度下的材質閃爍。安全最佳化:延遲 + 最佳化。 同步記憶體操作 確保計算和記憶體操作之間的資料一致性。 此選項應能修復某些遊戲中的問題,但在某些情況下可能會降低效能。 使用Unreal Engine 4的遊戲似乎受影響最大。 停用緩衝區重新排序 diff --git a/src/android/app/src/main/res/values/arrays.xml b/src/android/app/src/main/res/values/arrays.xml index 2f0392675d..bc9f13c625 100644 --- a/src/android/app/src/main/res/values/arrays.xml +++ b/src/android/app/src/main/res/values/arrays.xml @@ -451,7 +451,18 @@ 1 2 - + + @string/fence_release_mode_default + @string/fence_release_mode_delayed + @string/fence_release_mode_optimized_safe + @string/fence_release_mode_optimized + + + 0 + 1 + 2 + 3 + @string/dma_accuracy_default @string/dma_accuracy_normal diff --git a/src/android/app/src/main/res/values/strings.xml b/src/android/app/src/main/res/values/strings.xml index 975bd1741a..ac387b534e 100644 --- a/src/android/app/src/main/res/values/strings.xml +++ b/src/android/app/src/main/res/values/strings.xml @@ -90,8 +90,8 @@ A method of automatic resource management in Vulkan that ensures proper release of resources when they are no longer needed, but may cause crashes in bundled games. Enhanced Frame Pacing Ensures smooth and consistent frame delivery by synchronizing the timing between frames, reducing stuttering and uneven animation. Ideal for games that experience frame timing instability or micro-stutters during gameplay. - Release Fences Early - Helps fix 0 FPS in games like DKCR:HD, Subnautica Below Zero and Ori 2, but may break loading or performance in Unreal Engine games. + Fence Release Mode + Optimized: Aimed to fix 0 FPS in games like DKCR:HD, Subnautica Below Zero and Ori 2 (android only). Delayed: Aimed to fix texture flicker like in Ender Magnolia in Normal accuracy. Optimized Safe: Delayed + Optimized. Sync Memory Operations Ensures data consistency between compute and memory operations. This option should fix issues in some games, but may also reduce performance in some cases. Unreal Engine 4 games often see the most significant changes thereof. Disable Buffer Reorder @@ -934,6 +934,12 @@ High Extreme (Slow) + + Default + Delayed + Optimized Safe + Optimized + Default Normal diff --git a/src/common/settings.h b/src/common/settings.h index b846f41318..1e38a9d463 100644 --- a/src/common/settings.h +++ b/src/common/settings.h @@ -469,15 +469,15 @@ struct Values { Specialization::Default, true, true}; -#ifdef ANDROID - SwitchableSetting early_release_fences{linkage, - false, - "early_release_fences", - Category::RendererAdvanced, - Specialization::Default, - true, - true}; -#endif + SwitchableSetting fence_release_mode{linkage, + FenceReleaseMode::Default, + FenceReleaseMode::Default, + FenceReleaseMode::Optimized, + "fence_release_mode", + Category::RendererAdvanced, + Specialization::Default, + true, + true}; SwitchableSetting sync_memory_operations{linkage, false, "sync_memory_operations", diff --git a/src/common/settings_enums.h b/src/common/settings_enums.h index 52b4a128f7..6da18d7f66 100644 --- a/src/common/settings_enums.h +++ b/src/common/settings_enums.h @@ -136,6 +136,8 @@ ENUM(ShaderBackend, Glsl, Glasm, SpirV); ENUM(GpuAccuracy, Normal, High, Extreme); +ENUM(FenceReleaseMode, Default, Delayed, OptimizedSafe, Optimized) + ENUM(DmaAccuracy, Default, Normal, High, Extreme); ENUM(CpuBackend, Dynarmic, Nce); diff --git a/src/video_core/fence_manager.h b/src/video_core/fence_manager.h index 0f927159ba..375db62ae4 100644 --- a/src/video_core/fence_manager.h +++ b/src/video_core/fence_manager.h @@ -23,6 +23,7 @@ #include "video_core/host1x/host1x.h" #include "video_core/host1x/syncpoint_manager.h" #include "video_core/rasterizer_interface.h" +#include "common/settings_enums.h" namespace VideoCommon { @@ -72,13 +73,34 @@ public: } void SignalFence(std::function&& func) { - const bool delay_fence = Settings::IsGPULevelHigh(); + const auto mode = Settings::values.fence_release_mode.GetValue(); + bool delay_fence = Settings::IsGPULevelHigh(); + bool use_optimized = false; - #ifdef __ANDROID__ - const bool use_optimized = Settings::values.early_release_fences.GetValue(); - #else - constexpr bool use_optimized = false; - #endif +#if defined(__ANDROID__) + const bool is_optimized_available = true; +#else + constexpr bool is_optimized_available = false; +#endif + + switch (mode) { + case Settings::FenceReleaseMode::Default: // Path: early_fence = off, delay_fence = IsGPULevelHigh() + // use_optimized = false; + // delay_fence = IsGPULevelHigh(); + break; + case Settings::FenceReleaseMode::Delayed: // Path: early_fence = off, delay_fence = forced true + // use_optimized = false; + delay_fence = true; + break; + case Settings::FenceReleaseMode::OptimizedSafe: // Path: early_fence = on, delay_fence = forced true + use_optimized = is_optimized_available && true; + delay_fence = true; + break; + case Settings::FenceReleaseMode::Optimized: // Path: early_fence = on, delay_fence = IsGPULevelHigh() + use_optimized = is_optimized_available && true; + // delay_fence = IsGPULevelHigh(); + break; + } const bool should_flush = ShouldFlush(); CommitAsyncFlushes(); @@ -87,21 +109,16 @@ public: if (use_optimized) { if (!delay_fence) { TryReleasePendingFences(); - } - - if (delay_fence) { + } else { guard.lock(); uncommitted_operations.emplace_back(std::move(func)); } } else { if constexpr (!can_async_check) { TryReleasePendingFences(); - } - - if constexpr (can_async_check) { + } else { guard.lock(); } - if (delay_fence) { uncommitted_operations.emplace_back(std::move(func)); } diff --git a/src/yuzu/configuration/shared_translation.cpp b/src/yuzu/configuration/shared_translation.cpp index f6d590c0ee..44065ac803 100644 --- a/src/yuzu/configuration/shared_translation.cpp +++ b/src/yuzu/configuration/shared_translation.cpp @@ -526,6 +526,13 @@ std::unique_ptr ComboboxEnumeration(QWidget* parent) PAIR(GpuAccuracy, High, tr("High")), PAIR(GpuAccuracy, Extreme, tr("Extreme")), }}); + translations->insert({Settings::EnumMetadata::Index(), + { + PAIR(FenceReleaseMode, Default, tr("Default")), + PAIR(FenceReleaseMode, Delayed, tr("Delayed")), + PAIR(FenceReleaseMode, OptimizedSafe, tr("Optimized Safe")), + PAIR(FenceReleaseMode, Optimized, tr("Optimized")), + }}); translations->insert({Settings::EnumMetadata::Index(), { PAIR(DmaAccuracy, Default, tr("Default")),