
Reshade Bridge for RedScript
一个Red4ext插件,将ReShade的附加组件API与Redscript桥接,使任何REDscript模组能够在运行时动态切换当前ReShade预设、切换效果或启用/禁用单个技术。
查看大图描述
一个 Red4ext 插件,用于桥接 ReShade 的附加组件 API 与 REDscript,使任何 REDscript 模组都能在运行时动态切换当前使用的 ReShade 预设、开关效果或启用/禁用单个技术。
应用场景包括在白天和夜晚的 ReShade 配置文件之间切换、基于天气的配置文件、夜视效果、光学迷彩内部视角等。任君挑选!
这是一个模组制作者资源,本身不会单独产生任何效果。 它将成为未来设计用于动态 ReShade 配置文件的模组的必要前置条件。
致所有希望使用此资源构建模组的各位——目前仍处于早期测试阶段。 预设之间的切换功能有效。我正在编写一个模组来使用它。 其他功能虽已实现,但尚未经过测试。
安装说明
手动安装或使用 Vortex 安装。
<赛博朋克 2077 根目录>/
└── red4ext/
└── plugins/
└── ReshadeBridge/
└── ReshadeBridge.dll ← 复制到此
主要功能
该插件是一个单独的 DLL,它同时充当 Red4ext 插件 和 ReShade 附加组件。
更多详情请查看我的 GitHub 仓库: https://github.com/SkyrimLL/Cyberpunk2077/tree/main/ReshadeBridgeSource
以下是暴露给 REDScript 的方法概要。
✅ 运行时就绪、预设控制和单技术切换功能已通过测试。 ⚠️ 效果列表切换功能尚未测试。
// ── 运行时就绪 ───────────────────────────────────────────────────────
// 当 ReShade 效果运行时已被捕获且所有 RB_* 调用将成功时,返回 true。
// 如果你不确定 ReShade 是否已完成初始化,请在发起其他调用前轮询此函数。
✅ native func RB_IsRuntimeReady() -> Bool
// 如果在 DLL 加载时初始尝试附加组件注册失败(例如 ReShade 尚未
// 被加载到进程中),则重试注册。
// 一旦运行时被捕获并准备好,也返回 true。
// 可安全重复调用——一旦注册则无操作。
✅ native func RB_RefreshRuntime() -> Bool
// ── 预设控制 ──────────────────────────────────────────────────────────
// 切换当前预设(绝对路径或相对于游戏可执行文件的路径)。
✅ native func RB_SetPreset(path: String) -> Bool
// 获取当前加载的预设路径。
✅ native func RB_GetPreset() -> String
// ── 全局效果开关 ───────────────────────────────────────────────────
// 一次启用或禁用所有 ReShade 效果。
⚠️ native func RB_SetEffectsEnabled(enabled: Bool) -> Void
// 查询效果当前是否已启用。
⚠️ native func RB_GetEffectsEnabled() -> Bool
// ── 单技术切换 ────────────────────────────────────────────────────
// 通过 ReShade 界面中显示的名称启用或禁用特定技术。
✅ native func RB_SetTechniqueEnabled(name: String, enabled: Bool) -> Bool
// 查询特定技术当前是否已启用。
✅ native func RB_GetTechniqueEnabled(name: String) -> Bool
前置要求
- Red4ext。
- REDScript。
- 当前版本仅在支持完整附加组件功能的 Reshade 6.7.3 上测试过。
致谢
- Red4ext 和 ReShade API 团队提供的代码示例和参考文档。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。