diff options
| -rw-r--r-- | package.json | 2 | ||||
| -rw-r--r-- | py_modules/lsfg_vk/config_schema_generated.py | 16 | ||||
| -rw-r--r-- | py_modules/lsfg_vk/configuration_helpers_generated.py | 2 | ||||
| -rw-r--r-- | py_modules/lsfg_vk/constants.py | 5 | ||||
| -rw-r--r-- | shared_config.py | 18 | ||||
| -rw-r--r-- | src/components/ConfigurationSection.tsx | 22 | ||||
| -rw-r--r-- | src/config/configSchema.ts | 4 | ||||
| -rw-r--r-- | src/config/generatedConfigSchema.ts | 26 |
8 files changed, 29 insertions, 66 deletions
diff --git a/package.json b/package.json index 0791681..2018e52 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "decky-lsfg-vk", - "version": "0.12.3", + "version": "0.13.0-beta.1", "description": "Use Lossless Scaling on the Steam Deck using the lsfg-vk vulkan layer", "type": "module", "scripts": { diff --git a/py_modules/lsfg_vk/config_schema_generated.py b/py_modules/lsfg_vk/config_schema_generated.py index 53e9693..93169b9 100644 --- a/py_modules/lsfg_vk/config_schema_generated.py +++ b/py_modules/lsfg_vk/config_schema_generated.py @@ -18,8 +18,7 @@ NO_FP16 = "no_fp16" MULTIPLIER = "multiplier" FLOW_SCALE = "flow_scale" PERFORMANCE_MODE = "performance_mode" -HDR_MODE = "hdr_mode" -EXPERIMENTAL_PRESENT_MODE = "experimental_present_mode" +PACING = "pacing" DXVK_FRAME_RATE = "dxvk_frame_rate" ENABLE_WOW64 = "enable_wow64" DISABLE_STEAMDECK_MODE = "disable_steamdeck_mode" @@ -37,8 +36,7 @@ class ConfigurationData(TypedDict): multiplier: int flow_scale: float performance_mode: bool - hdr_mode: bool - experimental_present_mode: str + pacing: str dxvk_frame_rate: int enable_wow64: bool disable_steamdeck_mode: bool @@ -129,8 +127,7 @@ def get_function_parameters() -> str: multiplier: int = 1, flow_scale: float = 0.8, performance_mode: bool = False, - hdr_mode: bool = False, - experimental_present_mode: str = "fifo", + pacing: str = "none", dxvk_frame_rate: int = 0, enable_wow64: bool = False, disable_steamdeck_mode: bool = False, @@ -149,8 +146,7 @@ def create_config_dict(**kwargs) -> ConfigurationData: "multiplier": kwargs.get("multiplier"), "flow_scale": kwargs.get("flow_scale"), "performance_mode": kwargs.get("performance_mode"), - "hdr_mode": kwargs.get("hdr_mode"), - "experimental_present_mode": kwargs.get("experimental_present_mode"), + "pacing": kwargs.get("pacing"), "dxvk_frame_rate": kwargs.get("dxvk_frame_rate"), "enable_wow64": kwargs.get("enable_wow64"), "disable_steamdeck_mode": kwargs.get("disable_steamdeck_mode"), @@ -163,6 +159,6 @@ def create_config_dict(**kwargs) -> ConfigurationData: # Field lists for dynamic operations -TOML_FIELDS = ['dll', 'no_fp16', 'multiplier', 'flow_scale', 'performance_mode', 'hdr_mode', 'experimental_present_mode'] +TOML_FIELDS = ['dll', 'no_fp16', 'multiplier', 'flow_scale', 'performance_mode', 'pacing'] SCRIPT_FIELDS = ['dxvk_frame_rate', 'enable_wow64', 'disable_steamdeck_mode', 'mangohud_workaround', 'disable_vkbasalt', 'force_enable_vkbasalt', 'enable_wsi', 'enable_zink'] -ALL_FIELDS = ['dll', 'no_fp16', 'multiplier', 'flow_scale', 'performance_mode', 'hdr_mode', 'experimental_present_mode', 'dxvk_frame_rate', 'enable_wow64', 'disable_steamdeck_mode', 'mangohud_workaround', 'disable_vkbasalt', 'force_enable_vkbasalt', 'enable_wsi', 'enable_zink'] +ALL_FIELDS = ['dll', 'no_fp16', 'multiplier', 'flow_scale', 'performance_mode', 'pacing', 'dxvk_frame_rate', 'enable_wow64', 'disable_steamdeck_mode', 'mangohud_workaround', 'disable_vkbasalt', 'force_enable_vkbasalt', 'enable_wsi', 'enable_zink'] diff --git a/py_modules/lsfg_vk/configuration_helpers_generated.py b/py_modules/lsfg_vk/configuration_helpers_generated.py index 1383174..6321f7d 100644 --- a/py_modules/lsfg_vk/configuration_helpers_generated.py +++ b/py_modules/lsfg_vk/configuration_helpers_generated.py @@ -9,7 +9,7 @@ from .config_schema_generated import ConfigurationData, ALL_FIELDS def log_configuration_update(logger, config: ConfigurationData) -> None: """Log configuration update with all field values""" - logger.info(f"Updated lsfg TOML configuration: dll={config['dll']}, no_fp16={config['no_fp16']}, multiplier={config['multiplier']}, flow_scale={config['flow_scale']}, performance_mode={config['performance_mode']}, hdr_mode={config['hdr_mode']}, experimental_present_mode={config['experimental_present_mode']}, dxvk_frame_rate={config['dxvk_frame_rate']}, enable_wow64={config['enable_wow64']}, disable_steamdeck_mode={config['disable_steamdeck_mode']}, mangohud_workaround={config['mangohud_workaround']}, disable_vkbasalt={config['disable_vkbasalt']}, force_enable_vkbasalt={config['force_enable_vkbasalt']}, enable_wsi={config['enable_wsi']}, enable_zink={config['enable_zink']}") + logger.info(f"Updated lsfg TOML configuration: dll={config['dll']}, no_fp16={config['no_fp16']}, multiplier={config['multiplier']}, flow_scale={config['flow_scale']}, performance_mode={config['performance_mode']}, pacing={config['pacing']}, dxvk_frame_rate={config['dxvk_frame_rate']}, enable_wow64={config['enable_wow64']}, disable_steamdeck_mode={config['disable_steamdeck_mode']}, mangohud_workaround={config['mangohud_workaround']}, disable_vkbasalt={config['disable_vkbasalt']}, force_enable_vkbasalt={config['force_enable_vkbasalt']}, enable_wsi={config['enable_wsi']}, enable_zink={config['enable_zink']}") def get_config_field_names() -> list[str]: diff --git a/py_modules/lsfg_vk/constants.py b/py_modules/lsfg_vk/constants.py index 3d8e44a..4cbf7a5 100644 --- a/py_modules/lsfg_vk/constants.py +++ b/py_modules/lsfg_vk/constants.py @@ -11,8 +11,9 @@ CONFIG_DIR = ".config/lsfg-vk" SCRIPT_NAME = "lsfg" CONFIG_FILENAME = "conf.toml" -LIB_FILENAME = "liblsfg-vk.so" -JSON_FILENAME = "VkLayer_LS_frame_generation.json" +# v2.0 file names +LIB_FILENAME = "libVkLayer_LSFGVK_frame_generation.so" +JSON_FILENAME = "VkLayer_LSFGVK_frame_generation.json" ZIP_FILENAME = "lsfg-vk_noui.zip" FLATPAK_23_08_FILENAME = "org.freedesktop.Platform.VulkanLayer.lsfg_vk_23.08.flatpak" diff --git a/shared_config.py b/shared_config.py index 997717b..4e3ab68 100644 --- a/shared_config.py +++ b/shared_config.py @@ -59,22 +59,16 @@ CONFIG_SCHEMA_DEF = { "location": "toml" }, - "hdr_mode": { - "name": "hdr_mode", - "fieldType": ConfigFieldType.BOOLEAN, - "default": False, - "description": "enable HDR mode (only for games that support HDR)", - "location": "toml" - }, - - "experimental_present_mode": { - "name": "experimental_present_mode", + "pacing": { + "name": "pacing", "fieldType": ConfigFieldType.STRING, - "default": "fifo", - "description": "override Vulkan present mode (may cause crashes)", + "default": "none", + "description": "frame pacing mode (currently only 'none' supported)", "location": "toml" }, + # Removed in v2.0: hdr_mode and experimental_present_mode no longer supported + "dxvk_frame_rate": { "name": "dxvk_frame_rate", "fieldType": ConfigFieldType.INTEGER, diff --git a/src/components/ConfigurationSection.tsx b/src/components/ConfigurationSection.tsx index 0734297..7b39dfb 100644 --- a/src/components/ConfigurationSection.tsx +++ b/src/components/ConfigurationSection.tsx @@ -3,8 +3,8 @@ import { useState, useEffect } from "react"; import { RiArrowDownSFill, RiArrowUpSFill } from "react-icons/ri"; import { ConfigurationData } from "../config/configSchema"; import { - FLOW_SCALE, PERFORMANCE_MODE, HDR_MODE, - EXPERIMENTAL_PRESENT_MODE, DXVK_FRAME_RATE, DISABLE_STEAMDECK_MODE, + FLOW_SCALE, PERFORMANCE_MODE, PACING, + DXVK_FRAME_RATE, DISABLE_STEAMDECK_MODE, MANGOHUD_WORKAROUND, DISABLE_VKBASALT, FORCE_ENABLE_VKBASALT, ENABLE_WSI, ENABLE_ZINK } from "../config/generatedConfigSchema"; @@ -139,30 +139,12 @@ export function ConfigurationSection({ <PanelSectionRow> <ToggleField - label={`Present Mode (${(config.experimental_present_mode || "fifo") === "fifo" ? "FIFO - VSync" : "Mailbox"})`} - description="Toggle between FIFO - VSync (default) and Mailbox presentation modes for better performance or compatibility" - checked={(config.experimental_present_mode || "fifo") === "fifo"} - onChange={(value) => onConfigChange(EXPERIMENTAL_PRESENT_MODE, value ? "fifo" : "mailbox")} - /> - </PanelSectionRow> - - <PanelSectionRow> - <ToggleField label="Performance Mode" description="Uses a lighter model for FG (Recommended for most games)" checked={config.performance_mode} onChange={(value) => onConfigChange(PERFORMANCE_MODE, value)} /> </PanelSectionRow> - - <PanelSectionRow> - <ToggleField - label="HDR Mode" - description="Enables HDR mode (only for games that support HDR)" - checked={config.hdr_mode} - onChange={(value) => onConfigChange(HDR_MODE, value)} - /> - </PanelSectionRow> </> )} diff --git a/src/config/configSchema.ts b/src/config/configSchema.ts index 6c6cf19..6c70df3 100644 --- a/src/config/configSchema.ts +++ b/src/config/configSchema.ts @@ -18,8 +18,8 @@ export { getFieldNames, getDefaults, getFieldTypes, - DLL, NO_FP16, MULTIPLIER, FLOW_SCALE, PERFORMANCE_MODE, HDR_MODE, - EXPERIMENTAL_PRESENT_MODE, DXVK_FRAME_RATE, ENABLE_WOW64, + DLL, NO_FP16, MULTIPLIER, FLOW_SCALE, PERFORMANCE_MODE, PACING, + DXVK_FRAME_RATE, ENABLE_WOW64, DISABLE_STEAMDECK_MODE, MANGOHUD_WORKAROUND, DISABLE_VKBASALT, FORCE_ENABLE_VKBASALT, ENABLE_WSI, ENABLE_ZINK } from './generatedConfigSchema'; diff --git a/src/config/generatedConfigSchema.ts b/src/config/generatedConfigSchema.ts index 3c5d34e..ce3c3f7 100644 --- a/src/config/generatedConfigSchema.ts +++ b/src/config/generatedConfigSchema.ts @@ -13,8 +13,7 @@ export const NO_FP16 = "no_fp16" as const; export const MULTIPLIER = "multiplier" as const; export const FLOW_SCALE = "flow_scale" as const; export const PERFORMANCE_MODE = "performance_mode" as const; -export const HDR_MODE = "hdr_mode" as const; -export const EXPERIMENTAL_PRESENT_MODE = "experimental_present_mode" as const; +export const PACING = "pacing" as const; export const DXVK_FRAME_RATE = "dxvk_frame_rate" as const; export const ENABLE_WOW64 = "enable_wow64" as const; export const DISABLE_STEAMDECK_MODE = "disable_steamdeck_mode" as const; @@ -64,17 +63,11 @@ export const CONFIG_SCHEMA: Record<string, ConfigField> = { default: false, description: "use a lighter model for FG (recommended for most games)" }, - hdr_mode: { - name: "hdr_mode", - fieldType: ConfigFieldType.BOOLEAN, - default: false, - description: "enable HDR mode (only for games that support HDR)" - }, - experimental_present_mode: { - name: "experimental_present_mode", + pacing: { + name: "pacing", fieldType: ConfigFieldType.STRING, - default: "fifo", - description: "override Vulkan present mode (may cause crashes)" + default: "none", + description: "frame pacing mode (currently only 'none' supported)" }, dxvk_frame_rate: { name: "dxvk_frame_rate", @@ -133,8 +126,7 @@ export interface ConfigurationData { multiplier: number; flow_scale: number; performance_mode: boolean; - hdr_mode: boolean; - experimental_present_mode: string; + pacing: string; dxvk_frame_rate: number; enable_wow64: boolean; disable_steamdeck_mode: boolean; @@ -157,8 +149,7 @@ export function getDefaults(): ConfigurationData { multiplier: 1, flow_scale: 0.8, performance_mode: false, - hdr_mode: false, - experimental_present_mode: "fifo", + pacing: "none", dxvk_frame_rate: 0, enable_wow64: false, disable_steamdeck_mode: false, @@ -177,8 +168,7 @@ export function getFieldTypes(): Record<string, ConfigFieldType> { multiplier: ConfigFieldType.INTEGER, flow_scale: ConfigFieldType.FLOAT, performance_mode: ConfigFieldType.BOOLEAN, - hdr_mode: ConfigFieldType.BOOLEAN, - experimental_present_mode: ConfigFieldType.STRING, + pacing: ConfigFieldType.STRING, dxvk_frame_rate: ConfigFieldType.INTEGER, enable_wow64: ConfigFieldType.BOOLEAN, disable_steamdeck_mode: ConfigFieldType.BOOLEAN, |
