news 2026/10/17 2:15:00

RenoDX DirectX游戏修改工具集|不动游戏本体,换掉着色器、找回HDR、限帧降功耗

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RenoDX DirectX游戏修改工具集|不动游戏本体,换掉着色器、找回HDR、限帧降功耗

RenoDX DirectX游戏修改工具集|不动游戏本体,换掉着色器、找回HDR、限帧降功耗

【免费下载链接】renodxRenovation Engine for DirectX Games项目地址: https://gitcode.com/GitHub_Trending/re/renodx

游戏画面最后总是差一口气:HDR在最后一次拷贝时丢了、高光被压平、想限帧降功耗却没地方下手。问题往往出在某个着色器或某个中间纹理格式上,但自己去挖游戏可执行文件代价太高。RenoDX是一款借助Reshade 插件系统(Reshade 是通用的 DX 钩子框架,能把功能注入游戏而不改动可执行文件)挂进游戏 DirectX 调用的DirectX 游戏修改工具集:换着色器、注缓冲区、升 swapchain、写用户设置,都不需要修改游戏本体。

项目速览

项目说明
项目定位DirectX 游戏 modding 工具集:着色器替换、缓冲区注入、覆盖层、swapchain 升级、纹理资源升级、设置持久化
上游依赖基于Reshade 插件系统,钩子全部交给 Reshade,不针对特定版本 exe 打补丁
构建栈CMake presets(clang / ninja / vs)、MSVC 2022、Windows SDK ≥ 10.0.26100
mod 组织方式src/games/下每个目录即一个游戏 mod,统一产出renodx-{game}.addon64
配套工具devkit 实时检查、mcp_bridge MCP 桥、fpslimiter 帧率限制器、decomp.exe SM6 反编译器

适合谁:游戏已装 Reshade 的 Windows DirectX 玩家;能读写 HLSL、想修游戏画面或性能的轻度创作者;想用 MCP 客户端辅助改游戏的开发者。不适合谁:只想要"下载即拖入"的纯可视化 mod 工具的人;非 Windows 平台(构建与运行都在 Windows 侧);完全不打算碰代码的人。

🏗️ 从零构建出第一个 addon

1. 准备环境前置。安装 VSCode、MSVC 2022 Build Tools、CMake、Clang/LLVM、Ninja 和 Windows SDK(10.0.26100.0 或更高)。CMake preset 用clang-cl作编译器,HLSL 编译还依赖 SDK 自带的fxc与dxc。

2. 获取代码。

git clone https://gitcode.com/GitHub_Trending/re/renodx

3. 初始化子模块与工具链。Reshade 等依赖在子模块里;脚本会按仓库配置把dxc、slangc、glslang、cmd_Decompiler等装进bin/:

git submodule update --init --recursive powershell -ExecutionPolicy Bypass -File .\scripts\setup-dev-env.ps1 -Install

提示:工具版本以 cmake/tool-versions.cmake 为唯一事实来源;缺 Windows SDK 时脚本会尝试安装,装好后把fxc.exe复制进bin/。

4. 配置并构建。

cmake --preset clang-x64 cmake --build --preset clang-x64-release

提示:32 位游戏改用clang-x86,MSVC 用ninja-x64,Visual Studio 生成器用vs-x64。构建产物是build/下各游戏的renodx-{game}.addon64,放入游戏的 Reshade 目录即可生效。

🔍 每个功能帮你解决什么

实时看清游戏在画什么

帮你做到:不再靠猜,游戏内逐条列出当前帧的 draw call、着色器与纹理格式,并可交给外部 MCP 客户端驱动。在哪里实现:游戏侧是 src/addons/devkit/,桥接进程是 src/apps/mcp_bridge/。最小示例:

cmake --build --preset clang-x64-debug --target devkit mcp_bridge

产出renodx-devkit.addon64与renodx-mcp-bridge.exe,连接后先调devkit_status、devkit_queue_snapshot,下一帧 present 后即可查看 draws 与 shaders。

确认画面是否在最后一次拷贝前丢精度

帮你做到:发现管线中途被压平的格式并恢复。在哪里实现:升级规则在 src/utils/resource_upgrade.hpp,swapchain 侧在 src/utils/swapchain.hpp。最小示例:仓库里 RE4 重制版的 mod 注册了一条规则——N 卡上把 back buffer 的r11g11b10_float升为r16g16b16a16_float(写法见 src/games/re4remake/addon.cpp),高光细节不再被 11 位格式抹平。

限帧降 GPU 占用

帮你做到:一个独立于具体游戏的帧率限制器 addon。在哪里实现:src/addons/fpslimiter/addon.cpp。最小示例:addon 注册FPSLimit设置(0~480,默认 0 表示不限),值通过设置系统写到磁盘,下次启动自动记住。

按 CRC 地址换掉单个着色器

帮你做到:用自写 HLSL 顶替原版着色器,全程不碰游戏文件。在哪里实现:顶层 CMake 自动扫描src/games/**/*.hlsl,编译为字节码并生成embed/{CRC32}.h注入对应 mod。最小示例:把文件命名为0xC0DEC0DE.ps_6_6.hlsl(CRC32 + 着色器目标)放进对应游戏目录,它会自动成为该 mod 的一部分,无需手写任何构建脚本。

🎯 实战:用 devkit 验证并找回某游戏 final blit 的 HDR

目标:先回答"HDR 是否在最后一次拷贝前就丢了",而不是上来就改着色器。操作(完整循环见 docs/DEVKIT_MCP.md):连接后用devkit_select_device选中活跃设备(某设备显示 0 draws 就说明选错了)→devkit_queue_snapshot等下一帧 →从帧尾往前用devkit_list_draws找最后几笔 →devkit_get_draw查看渲染目标格式 → 必要时devkit_set_resource_clone克隆资源回读。效果验证:PNG 预览只是 SDR,不能证明 HDR 存活;要看克隆回读统计或.exrdump 里是否保留了大于 1.0 的数值。验证通过后,把规则写进src/games/{game}/addon.cpp变成正式 mod,别把 devkit 手动开关留在成品里。

🛠️ 自定义:做 mod 的最短路径

  1. 复制 src/games/generic/ 模板到新目录src/games/{game}/;
  2. 填metadata.json的id、title,需要自动部署就加deploy.steam_appid(字段规范见 renodx-metadata-schema.json);
  3. 按{CRC32}.{TARGET}.hlsl命名放好着色器,目录里有addon.cpp时 CMake 自动建出renodx-{game}目标,不用改 CMakeLists;
  4. 只构建该目标,再跑 scripts/deploy-early-access.ps1 交互式选择目标部署。

⚠️ 排障速查

症状处理方向
配置时提示 DXC/glslang 版本低于最低要求跑setup-dev-env.ps1 -Update,以cmake/tool-versions.cmake为准
游戏自带dxcompiler.dll导致 devkit 反编译异常用devkit_set_tools_path指向仓库bin目录,加载仓库工具链
连接后 0 draws / 0 shaders设备选错:devkit_status查看设备列表,重选活跃设备
live shader 修改不生效或卡帧确认devkit_get_shader的 source 是File;卡住时重新构建最新 devkit
32 位游戏加载不了 addon用cmake --preset clang-x86构建对应 32 位目标

📚 资源与社区

  • 构建与工具链说明:docs/CONTRIBUTING.md
  • 实时检查与 MCP 工作流详解:docs/DEVKIT_MCP.md
  • 各游戏 mod 与共享着色器库:src/games/、src/shaders/
  • README 中还给了官方 Discord 社区与 Mods 列表页入口,decomp.exe(Shader Model 6+ 反编译器)等工具可从那里下载

下次再遇到画面发闷或功耗过高,别急着动游戏本体:挑一个你常玩的游戏,先在src/games/下建好它的文件夹,构建 devkit 看清最后一笔拷贝,再决定改哪个着色器。

请仅在单人或离线环境使用,并遵守游戏服务条款、尊重开发者的劳动成果。

【免费下载链接】renodxRenovation Engine for DirectX Games项目地址: https://gitcode.com/GitHub_Trending/re/renodx

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/17 2:14:35

AI辅助UI还原:Figma+VS Code+Code Buddy高效工作流

每次拿到Figma的设计稿,第一反应不是感叹设计有多精致,而是先估一下:这个得写多久。手写CSS、对间距、调字体、切图、做响应式,一套下来少则半天多则两天,中间还要反复跟设计确认"这个16px是padding还是gap&#…

作者头像 李华
网站建设 2026/10/17 2:13:57

一块钱包邮的RGB模块:从共阳共阴到PWM彩虹渐变全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/17 2:12:03

孪生网络:用比较学习实现看一眼就识别的单样本图像分类

读这篇论文的时候,我脑子里一直绕着一个问题:为什么让机器“看一眼就认识一个新东西”,听起来明明是人的本能,做起来却这么难。传统的图像分类模型习惯了成千上万张样本喂进去,但现实场景里——比如工业质检中偶发的缺…

作者头像 李华
网站建设 2026/10/17 2:10:32

Cocos2d-x Lua智能提示实战:VS Code元数据生成方案

简介:本资源是专为Cocos2d-x Lua游戏开发者打造的VSCode智能提示增强工具包,面向使用Lua进行Cocos2d-x项目开发的中高级程序员,解决API记忆负担重、文档查阅低效、代码补全缺失等核心痛点。压缩包为7z格式,共3个文件(1…

作者头像 李华
网站建设 2026/10/17 2:09:55

主动降噪原理揭秘:相消干涉如何实时抵消噪音

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华