☰
游戏不更新也能换 DLSS:DLSS Swapper 自由升降 9 类 DLL 版本完整指南
2026/10/6 7:46:20 网站建设 项目流程

游戏不更新也能换 DLSS:DLSS Swapper 自由升降 9 类 DLL 版本完整指南

【免费下载链接】dlss-swapper项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper

Meta Description:DLSS Swapper 是一款免费的 Windows 开源工具,集中下载与切换游戏内自带的 DLSS、FSR、XeSS DLL 版本,无需等待游戏更新。本文覆盖安装方式、支持范围、能力边界与数据存储位置。

为什么游戏里的 DLSS 版本永远停在最后一次更新

游戏里的 DLSS 版本被"写死"在最后一次更新上——想试试新版的更好画质,或退回更稳的旧版,都无从选择。DLSS Swapper 是免费的 Windows 开源工具,集中下载并切换游戏内自带的 DLSS、FSR、XeSS DLL 版本,不用等游戏更新就能升级或降级。

图像缩放和帧生成库以 DLL 形式躺在游戏目录里,版本只能跟着厂商补丁走,手动备份替换文件既繁琐又容易弄丢原件。Digital Foundry 对 DLSS 2.2 的分析(11:40 开始讨论)算是"为什么要换 DLL"的最好注脚:版本之间画质与开销的差异是真实可测的。

主界面就是一个游戏网格:每张卡片直接标出该游戏当前缩放库的版本。

9 类缩放 DLL 加 8 个游戏库,它能管多少

别以为它只认 DLSS。src/Data/DLLManager.cs 里维护着九组 DLL 记录,按图形 API 路径归类:

厂商 / 路径识别的 DLL
NVIDIAnvngx_dlss.dll(DLSS)
NVIDIAnvngx_dlssg.dll(DLSS-G)
NVIDIAnvngx_dlssd.dll(DLSS-D)
AMD DX12amd_fidelityfx_dx12.dll(FSR 3.1)
AMD Vulkanamd_fidelityfx_vk.dll(FSR 3.1)
Intellibxess.dll(XeSS)
Intellibxell.dll(XeLL 低延迟)
Intellibxess_fg.dll(XeSS-FG 帧生成)
Intellibxess_dx11.dll(DX11 专用)

同一款 FSR 要分 DX12 与 Vulkan 构建,是因为不同游戏走的图形 API 路径不同,构建"对口"才能替换——换 DLL 不是把文件丢进去就完事。DLSS-G 与 DLSS-D 的预设清单在 Assets 目录的 json 文件里。

游戏库侧由 src/Interfaces/IGameLibrary.cs 的位标志枚举覆盖:Steam、GOG、Epic Games、Ubisoft Connect、Xbox App、战网、EA App 均可自动扫描,还能通过 Add Game 按钮手动拉进任意游戏。EA App 比 README 的支持列表还超前一步,标题映射 ea_app_titles.json 已在代码里。每个库的启用状态都持久化在设置中,设置页可勾选哪些库参与扫描。

1 分钟装好:一条 winget 命令,或去 Releases 拿安装/便携版

官方渠道只有两个:GitHub Releases 页面(安装版与便携版都有)和 winget:

winget install --id=beeradmoore.dlss-swapper -e

⚠️ README 专门警告:网上存在自称 DLSS Swapper 的恶意网站。凡不是上面两条的"官方"账号或站点,直接忽略。鉴别官方包看 Windows 代码签名:发行版由 SignPath.io 免费签名,证书来自 SignPath 开源社区基金会,签名对得上才是正主。

系统要求极低:Windows 10 64 位(20H1,build 19041),显卡任意。工程配置与此互证——csproj 最低平台正是 10.0.19041.0,平台仅 x64。

打开程序后发生了什么:先读缓存,再全量扫描

启动分两步:先对每个启用库执行 LoadGamesFromCacheAsync,从本地数据库秒级读出已知游戏铺满网格;随后 LoadGamesAsync 全量扫描,增删游戏。游戏集合是可观察的,数据一变界面立刻跟上——这就是添加库、扫描完成后网格立刻变化的原因。细节见 docs/how-it-works/readme.md。

可下载清单走三级回退:先读上次远端抓取成功的 json\manifest.json;没有就退回程序内嵌的 static_manifest.json;再失败才去远端重新抓取。另有独立的"导入清单":可导入自己整理的 DLL 集合,文件不存在时清单保持 null、不新建文件,防止覆盖你还没用过的数据;加载失败则直接禁用导入功能。

避坑:做不到的 3 件事,和换错了怎么撤回

先划重点:

  • 不能给不支持 DLSS 的游戏注入 DLSS,它只替换已存在的库,不注入新功能;
  • 不保证换完的效果:性能提升、伪影减少、闪退减少,一个都不承诺;
  • 不保证游戏一定还能启动:换对了能修 bug,换错了可能让游戏打不开。

安全垫在数据层:游戏目录里每发现一个受管 DLL 的位置,都会建立 DLLRecord 记录并写入本地 SQLite 数据库(dlss_swapper.db),工具始终"知道原文件长什么样、放在哪"。新 DLL 水土不服时可以直接恢复原始 DLL。把它当版本管理工具用,别当疗效承诺器。

你的数据存在哪:一张表看清本地目录结构

根目录由 src/Storage.cs 按"安装/便携 × 调试/发布"四种组合决定:

形态存储根目录
安装版(正式发布)%LOCALAPPDATA%\DLSS Swapper\
便携版可执行文件同级 StoredData\ 目录
任意调试构建上述路径下再套 DEBUG 子目录

根目录关键文件:json\settings.json(库启用状态、窗口位置)、json\manifest.json(上次远端拉取的 DLL 清单)、json\imported_manifest.json(你导入的自定义清单)、image_cache\(封面缓存)、dlss_swapper.db(SQLite 数据库,恢复原始 DLL 的依据)、temp\(便携版)或系统临时目录下的 DLSS Swapper(安装版)存放下载临时文件。

便携/安装的路径切换靠编译开关:csproj 定义 Debug、Release、Debug_Portable、Release_Portable 四套配置,*_Portable会定义 PORTABLE 常量,存储路径随之切换。

功能请求与 bug 反馈走项目 issue 模板;贡献指南注明"很快发布";全部第三方依赖许可在 src/Acknowledgements 目录。

动手就两步:winget 安装或去 Releases 拿安装/便携版;然后在设置页只勾一个常用库,挑一个最熟的游戏换一版 DLL 试试手。

【免费下载链接】dlss-swapper项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询