diff options
| author | xXJSONDeruloXx <danielhimebauch@gmail.com> | 2025-12-10 12:52:08 -0500 |
|---|---|---|
| committer | xXJSONDeruloXx <danielhimebauch@gmail.com> | 2025-12-10 12:52:08 -0500 |
| commit | 3e2542bfac7baa64594079ef57a29f01feadff33 (patch) | |
| tree | eca6fd7b8a65209efb0c1147aefe090f67fa74be | |
| parent | 70027bd3d662807e19c587d13c8061e48760a4b5 (diff) | |
| download | Decky-Framegen-3e2542bfac7baa64594079ef57a29f01feadff33.tar.gz Decky-Framegen-3e2542bfac7baa64594079ef57a29f01feadff33.zip | |
add override bundled fg dll to new sdk with ml option, only for rdna4 tho
| -rw-r--r-- | main.py | 22 | ||||
| -rw-r--r-- | package.json | 5 |
2 files changed, 27 insertions, 0 deletions
@@ -10,6 +10,10 @@ from pathlib import Path # Set to False or comment out this constant to skip the overwrite by default. UPSCALER_OVERWRITE_ENABLED = True +# Toggle to enable overwriting the framegen DLL from the static remote binary. +# Set to False or comment out this constant to skip the overwrite by default. +FRAMEGEN_OVERWRITE_ENABLED = True + INJECTOR_FILENAMES = [ "dxgi.dll", "winmm.dll", @@ -306,6 +310,24 @@ class Plugin: except Exception as e: decky.logger.error(f"Failed upscaler overwrite step: {e}") + decky.logger.info("Starting framegen DLL overwrite check") + # Optionally overwrite amd_fidelityfx_framegeneration_dx12.dll with a newer static binary + # Toggle via env DECKY_SKIP_FRAMEGEN_OVERWRITE=true to skip. + try: + skip_overwrite = os.environ.get("DECKY_SKIP_FRAMEGEN_OVERWRITE", "false").lower() in ("1", "true", "yes") + if FRAMEGEN_OVERWRITE_ENABLED and not skip_overwrite: + framegen_src = bin_path / "amd_fidelityfx_framegeneration_dx12.dll" + framegen_dst = extract_path / "amd_fidelityfx_framegeneration_dx12.dll" + if framegen_src.exists(): + shutil.copy2(framegen_src, framegen_dst) + decky.logger.info("Overwrote amd_fidelityfx_framegeneration_dx12.dll with static remote binary") + else: + decky.logger.warning("amd_fidelityfx_framegeneration_dx12.dll not found in bin; skipping overwrite") + else: + decky.logger.info("Skipping framegen DLL overwrite due to DECKY_SKIP_FRAMEGEN_OVERWRITE") + except Exception as e: + decky.logger.error(f"Failed framegen overwrite step: {e}") + # Extract version from filename (e.g., OptiScaler_0.7.9.7z -> v0.7.9) version_match = optiscaler_archive.name.replace('.7z', '') if 'OptiScaler_' in version_match: diff --git a/package.json b/package.json index eaee760..a1405c7 100644 --- a/package.json +++ b/package.json @@ -63,6 +63,11 @@ "name": "amd_fidelityfx_upscaler_dx12.dll" }, { + "sha256hash": "3f5e674a59b400756e98ef31fd583a4eb08ad567ec8dee362886bc96e55ed347", + "url": "https://github.com/xXJSONDeruloXx/OptiScaler-Bleeding-Edge/releases/download/fsr_sdk_2.1/amd_fidelityfx_framegeneration_dx12.dll", + "name": "amd_fidelityfx_framegeneration_dx12.dll" + }, + { "sha256hash": "c4afb71d179894ac68874d48295e101fedb0dd8e10bcec29163760465706267c", "url": "https://github.com/optiscaler/OptiPatcher/releases/download/v0.30/OptiPatcher_v0.30.asi", "name": "OptiPatcher_v0.30.asi" |
