feature needed: HID/shared memory area input

  • Posts: 5
1 year 1 month ago #1 by bluedeath
Hi, would be possible to add an HID (joystick), open track/freepie or a shared area value that can be set by other programs ?
it would be useful do drive a the video matrix rotation when re-shade is used to drive VR systems HMD.
I am currently using the 3d shader written by BlueSkyDefender which is almost perfect on trasforming FPS games to VR if used with the right hardware combination but lacks head roll capability die to the fact that is not possible to manipulate the matrix rotation in real time.

Thanks in advance.

Please Log in or Create an account to join the conversation.

  • Posts: 3671
1 year 1 month ago - 1 year 1 month ago #2 by crosire
Interesting idea. But where would software coming from that supports ReShade's shared memory format?

Please Log in or Create an account to join the conversation.

  • Posts: 5
1 year 1 month ago #3 by bluedeath
Reading directx hid data would be the easyest way anyhow i think python can be used to manipulate the memory.

Please Log in or Create an account to join the conversation.

  • Posts: 5
1 year 1 month ago #4 by bluedeath
Please check freepie io plugin here.
github.com/AndersMalmgren/FreePIE/wiki/IO-Plugin

Please Log in or Create an account to join the conversation.

  • Posts: 8
11 months 2 weeks ago #5 by loxai
I'd be interested in this feature too (as I mentioned in a recent post: reshade.me/forum/general-discussion/5297...gration-with-reshade )

FreePieIO support would certainly be a great option. A nice plus to handling many kinds of inputs/hid data.
But also, users would be able to manipulate or generate the data at Python level with their own scripts, giving even more real time customisation options.

Please Log in or Create an account to join the conversation.

  • Posts: 3671
11 months 1 week ago #6 by crosire
I'm a bit hesitant since opening up more of ReShade to scripting is going to be a problem in multiplayer games. So it would have to be disabled there. And I don't think the current multiplayer detection system is robust enough for that.
The following user(s) said Thank You: loxai

Please Log in or Create an account to join the conversation.

  • Posts: 8
11 months 1 day ago #7 by loxai
I assume the concern is online cheating. I'm not familiar with such exploits but doesn't look to me like there's a risk.

The scripting happens at FreePie level to modify the FreePieIO data structure (4 sets of x,y,z,yaw,pitch,roll floats).

This data would be unidirectional. FreePie wouldn't have access to any sort of shader generated game data, ie. something like shader detecting position of enemy soldier, send pos to FP, FP move mouse to pos and shoot; would not be possible (and there's obviously easier ways to do something like that, no ReShade involved).

Basically, this would be another input like the existing keypress and mouse uniforms.

Please Log in or Create an account to join the conversation.

  • Posts: 59
10 months 4 days ago - 2 months 4 weeks ago #8 by CeeJay.dk
I don't see an issue with it.

We already support mouse and keyboard so input from more controllers shouldn't be that different, even if the controller is a virtual one.

The scripting is all done on FreePies side and it can't do anything other than read from input devices and output the same like it was an input device.
It can be used to translate controls on one input device and make it seem like it came from another so you can play games that require a joystick using your X360 controller or even a MIDI keyboard if you are so inclined.

I've looked at what it can take as input and what it can output and honestly the most evil use of FreePie I can think of is writing scripts that can do complex combo-moves in Street Fighter or Tekken games, with only the press of one button. This is something it can already do without Reshade support.
I don't think we have to worry about this. It looks safe - even in multiplayer games.

I vote we add support for FreePie and also support for other controllers so people don't need FreePie to use an X360 controller or joystick.

Please Log in or Create an account to join the conversation.

  • Posts: 59
2 months 4 weeks ago #9 by CeeJay.dk
For anyone following this thread there is now a FreePIE branch up on github.
github.com/crosire/reshade/tree/freepie

BlueSky have been running some tests and it seems to be working so we might see FreePIE support in the next version of Reshade.

Please Log in or Create an account to join the conversation.

  • Posts: 3671
1 month 1 week ago #10 by crosire
This is now in master, so will be part of the next release (v4.6).

Please Log in or Create an account to join the conversation.