Since I find the default gamepad handling of Windows to be lacking, I'd like to write a custom interface for that purpose. Basically, I want to add a layer between the plugged in gamepads and the Windows gamecontroller management. While I'm not sure how to tackle this problem, these are the steps I was thinking off so far:
- Disconnect any plugged in gamepads from Windows' gamecontroller management
- Create virtual gamecontroller (perhaps with vJoy/pyvjoy)
- Read inputs from the plugged in gamepads and apply them to the virtual gamecontrollers
However, apart from the second bullet point I don't know whether (and how) these are doable. Are there any APIs that can interact with devices the way that I need to? Do I need to get into driver programming and rewrite gamepad drivers?
I know this is a broad question to a very narrow topic, but I'm kind of at a loss where to get started. Any help would be much appreciated.