VolsandJezuz / Rinput-Library

Alternative for m_rawinput 1 & raw input for games that lack it.
http://sourcegl.sourceforge.net
GNU General Public License v3.0
30 stars 6 forks source link

RInput Library v1.44 by Vols and Jezuz

RInput is an alternative to in-game raw input, which some users perceive as having input lag or other shortcomings. It also allows for raw input in games which do not have a native raw input implementation. In either case, RInput will only work for x86 (32-bit) games that control aim using the Win32 API functions GetCursorPos and SetCursorPos.

Requirements

Note

This is a fork of RInput Library v1.31 as originally authored by abort. x64 architecture support was never added by him, but here are some notes on what would need to be changed to accomplish this, in case someone is interested:

Building

Compiled with Visual Studio 2008, though you may be able to get it to work with other versions or compilers (Visual C++ 2008 Express Edition is available for free @ https://go.microsoft.com/?linkid=7729279). If you want to start from scratch with your own project file, here's what seem to be the most important compiler and project options:

How it works

Summary of the process by the original author:

  1. The library gets injected into a process by an injector
  2. The injector creates a windows event to communicate with the injected library
  3. The injector calls the "entryPoint" function remotely
  4. The library initializes the hook and raw mouse input
  5. The library raises the event that has been created by the injector
  6. The injector gives the user feedback, based on whether the event was raised or not

Credits