From b37f3c7044209fc6fef3e39be549b97db194db3d Mon Sep 17 00:00:00 2001 From: xXJSONDeruloXx Date: Wed, 23 Jul 2025 23:07:35 -0400 Subject: fps slider for target pacing with UI --- src/components/ConfigurationSection.tsx | 14 +++++++++++++- src/config/configSchema.ts | 2 +- src/config/generatedConfigSchema.ts | 10 ++++++++++ 3 files changed, 24 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/components/ConfigurationSection.tsx b/src/components/ConfigurationSection.tsx index 778ebc8..7c5d9ca 100644 --- a/src/components/ConfigurationSection.tsx +++ b/src/components/ConfigurationSection.tsx @@ -2,7 +2,7 @@ import { PanelSectionRow, ToggleField, SliderField, DropdownItem } from "@decky/ import { ConfigurationData } from "../config/configSchema"; import { FpsMultiplierControl } from "./FpsMultiplierControl"; import { - FLOW_SCALE, PERFORMANCE_MODE, HDR_MODE, + FLOW_SCALE, TARGET_TOTAL_FPS, PERFORMANCE_MODE, HDR_MODE, EXPERIMENTAL_PRESENT_MODE, DXVK_FRAME_RATE, DISABLE_STEAMDECK_MODE, MANGOHUD_WORKAROUND, DISABLE_VKBASALT } from "../config/generatedConfigSchema"; @@ -49,6 +49,18 @@ export function ConfigurationSection({ /> + + onConfigChange(TARGET_TOTAL_FPS, value)} + /> + + = { default: 0.8, description: "change the flow scale" }, + target_total_fps: { + name: "target_total_fps", + fieldType: ConfigFieldType.FLOAT, + default: 0.0, + description: "specify your post-frame gen target framerate to force specific frame pacing logic. 0 = default pacing" + }, performance_mode: { name: "performance_mode", fieldType: ConfigFieldType.BOOLEAN, @@ -103,6 +110,7 @@ export interface ConfigurationData { dll: string; multiplier: number; flow_scale: number; + target_total_fps: number; performance_mode: boolean; hdr_mode: boolean; experimental_present_mode: string; @@ -123,6 +131,7 @@ export function getDefaults(): ConfigurationData { dll: "/games/Lossless Scaling/Lossless.dll", multiplier: 1, flow_scale: 0.8, + target_total_fps: 0.0, performance_mode: true, hdr_mode: false, experimental_present_mode: "fifo", @@ -139,6 +148,7 @@ export function getFieldTypes(): Record { dll: ConfigFieldType.STRING, multiplier: ConfigFieldType.INTEGER, flow_scale: ConfigFieldType.FLOAT, + target_total_fps: ConfigFieldType.FLOAT, performance_mode: ConfigFieldType.BOOLEAN, hdr_mode: ConfigFieldType.BOOLEAN, experimental_present_mode: ConfigFieldType.STRING, -- cgit v1.2.3