diff options
| author | MaranBr <maranbr@outlook.com> | 2026-02-12 00:23:19 +0100 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2026-02-12 00:23:19 +0100 |
| commit | 5f676a6a55aa4d748e545b0fc6956e9a5dbd2f7f (patch) | |
| tree | c6771e1dbfc36e0ab0236f69275454542585e7be /src/common | |
| parent | 2ab5b37137c1e1aa8e96d93bd0992aee872de44c (diff) | |
[vulkan] Add support for target FPS frame pacing (#3494)
This allows users to choose how the emulator manages frame pacing to reduce stuttering and provide a smoother and more consistent frame rate.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3494
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: MaranBr <maranbr@outlook.com>
Co-committed-by: MaranBr <maranbr@outlook.com>
Diffstat (limited to 'src/common')
| -rw-r--r-- | src/common/settings.h | 7 | ||||
| -rw-r--r-- | src/common/settings_enums.h | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/common/settings.h b/src/common/settings.h index 770acdbb69..385ae7e1c9 100644 --- a/src/common/settings.h +++ b/src/common/settings.h @@ -434,6 +434,13 @@ struct Values { "accelerate_astc", Category::RendererAdvanced}; + SwitchableSetting<FramePacingMode, true> frame_pacing_mode{linkage, + FramePacingMode::Target_Auto, + FramePacingMode::Target_Auto, + FramePacingMode::Target_240, + "frame_pacing_mode", + Category::RendererAdvanced}; + SwitchableSetting<AstcRecompression, true> astc_recompression{linkage, AstcRecompression::Uncompressed, "astc_recompression", diff --git a/src/common/settings_enums.h b/src/common/settings_enums.h index 33c553dc3c..7e3bef9bea 100644 --- a/src/common/settings_enums.h +++ b/src/common/settings_enums.h @@ -129,6 +129,7 @@ ENUM(TimeZone, Auto, Default, Cet, Cst6Cdt, Cuba, Eet, Egypt, Eire, Est, Est5Edt ENUM(AnisotropyMode, Automatic, Default, X2, X4, X8, X16, X32, X64, None); ENUM(AstcDecodeMode, Cpu, Gpu, CpuAsynchronous); ENUM(AstcRecompression, Uncompressed, Bc1, Bc3); +ENUM(FramePacingMode, Target_Auto, Target_30, Target_60, Target_120, Target_240); ENUM(VSyncMode, Immediate, Mailbox, Fifo, FifoRelaxed); ENUM(VramUsageMode, Conservative, Aggressive); ENUM(RendererBackend, OpenGL_GLSL, Vulkan, Null, OpenGL_GLASM, OpenGL_SPIRV); |
