ViGEm 总线驱动程序
模拟知名 USB 游戏控制器的 Windows 内核模式驱动程序。
🧟 本项目已停止维护 🧟
建议本软件的用户阅读生命周期终止声明。再见,祝好 🖖
关于
ViGEmBus
驱动程序和 ViGEmClient
库代表了虚拟游戏手柄模拟框架(简称 ViGEm
)的核心。ViGEm
旨在在内核级别实现 100% 准确的知名游戏外设模拟,作为纯软件设备。由于它模仿"真实设备",游戏和其他进程无需任何额外修改即可检测到基于 ViGEm
的设备(无需代理 DLL 或 API 钩子),并且可以直接使用。虽然(现已过时的)Scarlett.Crush Productions 虚拟总线驱动程序是本项目的精神之父,但 ViGEm
从头开始设计和编写,利用了 Microsoft 的内核模式驱动程序框架。
模拟设备
支持模拟以下 USB 游戏手柄:
使用场景
以下是 ViGEm
最常见的使用场景示例:
- 你有一个不受支持的输入设备,想在游戏中使用,但不想修改游戏。
- 你想在 PS4 远程游戏 中自由使用你选择的不同控制器。
- 你遇到了与 x360ce(4.x 版本之前)不兼容的游戏。
- 你想扩展输入设备的覆盖范围(比如通过网络将流量发送到不同的机器)。
- 你想测试/基准测试你的游戏,并需要一个用户输入回放机制。
- 你想解决
XInput
中的玩家插槽分配顺序问题。
支持的系统
🛑 Windows Server 可能可以运行但不受支持 🛑
关于在服务器操作系统上运行的错误报告/支持请求将被忽略。
1.16 版及以下
驱动程序适用于 Windows 7/8.1/10(x86 和 amd64)。
1.17 版及以上
驱动程序仅适用于 Windows 10/11(x86、amd64 和 ARM64)。
许可证
ViGEm 总线驱动程序采用 BSD-3-Clause 许可,详情请参阅 LICENSE。
如何构建
先决条件
- 步骤 1:安装 Visual Studio 2019
- 步骤 2:安装适用于 Windows 10 版本 2004 的 WDK
- 步骤 3:将驱动程序模块框架 (DMF) 克隆到相同的父目录。
- 为所有架构(x64 和 Win32)构建 Release 和 Debug 配置的
DmfK
项目。
- 为所有架构(x64 和 Win32)构建 Release 和 Debug 配置的
你可以直接在 Visual Studio 中构建。
请注意,你需要签名驱动程序才能在不使用测试模式的情况下使用它。
贡献
错误和功能
发现错误并希望修复它?在 GitHub 问题跟踪器上提交详细的问题!
有新功能的想法?让我们在 Discord 上讨论你的请求。
问题和支持
请注意,GitHub 问题跟踪器不是帮助台。我们提供了一系列支持资源,欢迎你查看!
安装
Nefarius Software Solutions e.U.
提供了预构建的生产签名二进制文件适用于 Windows 10/11,作为一体化安装程序。
赞助商
以下赞助商通过财务支持或赠送许可证帮助项目蓬勃发展:
ViGEm 的已知用户
以下是已知基于 ViGEm 构建的项目/公司/供应商的简要列表。
此列表并非详尽无遗,如果你希望将你的项目包含在内,请与我们联系!