Browse Source
[frontend] fix frame skip setting prsentation
Signed-off-by: crueter <crueter@eden-emu.dev>
pull/263/head
crueter
7 months ago
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
8 changed files with
19 additions and
28 deletions
src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/BooleanSetting.kt
src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/IntSetting.kt
src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/model/view/SettingsItem.kt
src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt
src/android/app/src/main/res/values/arrays.xml
src/android/app/src/main/res/values/strings.xml
src/common/settings.h
src/yuzu/configuration/shared_translation.cpp
@ -32,6 +32,7 @@ enum class BooleanSetting(override val key: String) : AbstractBooleanSetting {
RENDERER_DESCRIPTOR_INDEXING ( " descriptor_indexing " ) ,
RENDERER_SAMPLE_SHADING ( " sample_shading " ) ,
PICTURE_IN_PICTURE ( " picture_in_picture " ) ,
FRAME_SKIPPING ( " frame_skipping " ) ,
USE_CUSTOM_RTC ( " custom_rtc_enabled " ) ,
BLACK_BACKGROUNDS ( " black_backgrounds " ) ,
JOYSTICK_REL_CENTER ( " joystick_rel_center " ) ,
@ -42,7 +42,6 @@ enum class IntSetting(override val key: String) : AbstractIntSetting {
RENDERER_SAMPLE_SHADING_FRACTION ( " sample_shading_fraction " ) ,
FAST_CPU_TIME ( " fast_cpu_time " ) ,
CPU_TICKS ( " cpu_ticks " ) ,
FRAME_SKIPPING ( " frame_skipping " ) ,
FAST_GPU_TIME ( " fast_gpu_time " ) ,
BAT_TEMPERATURE_UNIT ( " bat_temperature_unit " ) ,
CABINET_APPLET ( " cabinet_applet_mode " ) ,
@ -243,12 +243,10 @@ abstract class SettingsItem(
)
)
put (
SingleChoice Setting (
Int Setting. FRAME_SKIPPING ,
Switch Setting (
Boolean Setting. FRAME_SKIPPING ,
titleId = R . string . frame_skipping ,
descriptionId = R . string . frame_skipping_description ,
choicesId = R . array . frameSkippingNames ,
valuesId = R . array . frameSkippingValues
)
)
put (
@ -450,7 +450,7 @@ class SettingsFragmentPresenter(
add ( BooleanSetting . RENDERER_EARLY_RELEASE_FENCES . key )
add ( BooleanSetting . BUFFER_REORDER_DISABLE . key )
add ( BooleanSetting . FRAME_INTERPOLATION . key )
add ( Int Setting. FRAME_SKIPPING . key )
add ( Boolean Setting. FRAME_SKIPPING . key )
add ( BooleanSetting . RENDERER_FAST_GPU . key )
add ( IntSetting . FAST_GPU_TIME . key )
add ( IntSetting . RENDERER_SHADER_BACKEND . key )
@ -21,18 +21,6 @@
<item > 1</item>
</integer-array>
<string-array name= "frameSkippingNames" >
<item > @string/disabled</item>
<item > 1</item>
<item > 2</item>
</string-array>
<integer-array name= "frameSkippingValues" >
<item > 0</item>
<item > 1</item>
<item > 2</item>
</integer-array>
<string-array name= "memoryNames" >
<item > @string/memory_4gb</item>
<item > @string/memory_6gb</item>
@ -482,8 +482,8 @@
<string name= "display" > Display</string>
<string name= "processing" > Post-Processing</string>
<string name= "frame_skipping" > WIP: Frameskip </string>
<string name= "frame_skipping_description" > Toggle frame skipping to improve performance by reducing the number of rendered frames. This feature is still being worked on and will be enabled in future releases. </string>
<string name= "frame_skipping" > Frame Skipping </string>
<string name= "frame_skipping_description" > Toggle frame skipping to improve performance by reducing the number of rendered frames.</string>
<string name= "renderer_accuracy" > Accuracy level</string>
<string name= "renderer_resolution" > Resolution (Handheld/Docked)</string>
<string name= "renderer_vsync" > VSync mode</string>
@ -326,8 +326,7 @@ struct Values {
SwitchableSetting < bool > frame_interpolation { linkage , true , " frame_interpolation " , Category : : Renderer ,
Specialization : : RuntimeList } ;
# endif
SwitchableSetting < bool > frame_skipping { linkage , false , " frame_skipping " , Category : : Renderer ,
Specialization : : RuntimeList } ;
SwitchableSetting < bool > frame_skipping { linkage , false , " frame_skipping " , Category : : Renderer } ;
SwitchableSetting < bool > use_disk_shader_cache { linkage , true , " use_disk_shader_cache " ,
Category : : Renderer } ;
SwitchableSetting < SpirvOptimizeMode , true > optimize_spirv_output { linkage ,
@ -269,6 +269,18 @@ std::unique_ptr<TranslationMap> InitializeTranslations(QWidget* parent)
INSERT ( Settings , bg_blue , QString ( ) , QString ( ) ) ;
// Renderer (Advanced Graphics)
INSERT ( Settings ,
enable_raii ,
tr ( " RAII " ) ,
tr ( " 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. " ) ) ;
INSERT ( Settings ,
frame_skipping ,
tr ( " Frame Skipping " ) ,
tr ( " Skips rendering every other frame while still presenting "
" the frame as rendered. \n This cuts the effective FPS in half, but can make "
" games run stable at the game's target FPS on weaker hardware. " ) ) ;
INSERT ( Settings ,
async_presentation ,
tr ( " Enable asynchronous presentation (Vulkan only) " ) ,
@ -335,12 +347,6 @@ std::unique_ptr<TranslationMap> InitializeTranslations(QWidget* parent)
tr ( " Improves rendering of transparency effects in specific games. " ) ) ;
// Renderer (Extensions)
INSERT ( Settings ,
enable_raii ,
tr ( " RAII " ) ,
tr ( " 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. " ) ) ;
INSERT ( Settings ,
dyna_state ,
tr ( " Extended Dynamic State " ) ,