Enhanced README.md

This commit is contained in:
Benjamin Höglinger
2018-06-29 12:56:43 +02:00
parent 0d7fbbfb06
commit fb8c4b1e68

View File

@@ -6,11 +6,27 @@ Windows kernel-mode driver emulating well-known USB game controllers.
)](https://ci.appveyor.com/project/nefarius/indicium-supra) [![Discord](https://img.shields.io/discord/346756263763378176.svg)](https://discord.gg/QTJpBX5) [![Website](https://img.shields.io/website-up-down-green-red/https/vigem.org.svg?label=ViGEm.org)](https://vigem.org/) [![PayPal Donate](https://img.shields.io/badge/paypal-donate-blue.svg)](<https://paypal.me/NefariusMaximus>) [![Support on Patreon](https://img.shields.io/badge/patreon-donate-orange.svg)](<https://www.patreon.com/nefarius>) [![GitHub followers](https://img.shields.io/github/followers/nefarius.svg?style=social&label=Follow)](https://github.com/nefarius) [![Twitter Follow](https://img.shields.io/twitter/follow/nefariusmaximus.svg?style=social&label=Follow)](https://twitter.com/nefariusmaximus)
## About
Currently supports emulation of the following USB gamepads:
The `ViGEmBus` driver and `ViGEmClient` libraries represent the core of the Virtual Gamepad Emulation Framework (or `ViGEm` , in short). `ViGEm` aims for a 100% accurate [emulation](<https://en.wikipedia.org/wiki/Emulator>) of well-known gaming peripherals as pure software-based devices at kernel level. As it mimics "the real thing" games and other processes require no additional modification whatsoever to detect `ViGEm`-based devices (no Proxy-DLLs or API-Hooking) and simply work out of the box. The spiritual father of `ViGEm` is the (now obsolete) [Scarlett.Crush Productions Virtual Bus Driver](<https://github.com/nefarius/ScpVBus>) while it has been completely redesigned and rewritten from the ground up utilizing Microsoft`s [Kernel-Mode Driver Framework
](https://en.wikipedia.org/wiki/Kernel-Mode_Driver_Framework).
### Emulated devices
Currently supports emulation of the following USB Gamepads:
- [Microsoft Xbox 360 Controller](https://en.wikipedia.org/wiki/Xbox_360_controller)
- [Sony DualShock 4 Controller](https://en.wikipedia.org/wiki/DualShock#DualShock_4)
## Necessary preparations for Windows 7
## Use cases
A few examples of the most common use cases for `ViGEm` are:
* You have an unsupported input device you'd like to use within games without modifying said game.
* You want the freedom to use a different controller of your choice in [PS4 Remote Play](<https://remoteplay.dl.playstation.net/remoteplay/>).
* You encountered a game not compatible with [x360ce](<https://www.x360ce.com/>).
* You want to extend the the reach of your input device (like send traffic to a different machine over a network).
* You want to test/benchmark your game and need a replay mechanism for your user inputs.
* You want to work around player slot assignment order issues in `XInput`.
## Supported Systems
The driver is built for Windows 7/8/8.1/10 (x86 and amd64).
### Necessary preparations for Windows 7
Before installing the bus driver on Windows 7 (x86 or x64) the following 3rd party software has to be installed:
* [Xbox 360 Accessories Software 1.2](https://www.microsoft.com/accessories/en-us/products/gaming/xbox-360-controller-for-windows/52a-00004#techspecs-connect) (contains the missing device drivers)
* [Microsoft Security Advisory 3033929 Update](https://technet.microsoft.com/en-us/library/security/3033929) has to be installed to support the drivers signature. Download links: