1) Key modifier: If I'm binding say my scroll wheel, I'd love to be able to bind SHIFT+Scroll wheel
2) Pause toggle: I want to be able to bind a key to "pause" the state of a virtual controller. For example, say I'm using vJoy and I've bound a mouse axis to a joystick axis, if the joystick is registering forward and right I should have a key that temporarily disables the mouse modification of the joystick, esentially pausing/saving/maintaining the state of the joystick.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
3) Exponential modifier: Right now axis binds are linear, it would be nice if we could make them exponential. What I mean by this is, in the example of a mouse axis bound to a joystick axis, it would be nice if the mouse mapped exponentially to the joystick, meaning if you moved the mouse in the middle of the screen it would make very small changes to the joystick (allowing for extra precision for something like leveling a plane), while moving the mouse further would exponentially impact the bound joystick axis.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
1) You can try the internal device "Calculator" (Boolean).
2) You can try the internal device "Program" (On / Off Binds).
3) Can you provide me with the math formula?
Currently, linear output: Output = Sensitivity * Input.
Exponential output: Output = Sensitivity * exp(Input)?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
3) Is your program aware of the actual x/y axis values of the vJoy joystick? If not I'm not sure this is possible. Assuming the joystick x and y are on a range from -1 to 1 (full left and full right), I think you'd have to take the square root of the current x/y axis value, add that to 'Sensitivity * Input' and then square the the result (doesn't have to be square root and square, could be cube root and cube).
Ideally you'd just map the square of the mouse x/y distance from center of monitor to x/y-axis of the joystick, but (and I could be wrong about this because I'm quite new to your program), it doesn't seem like that kind of mapping is a capability and it would probably be a bit much to add such a functionality to easily support an exponential mapping instead of a linear
Last edit: Nerdsie 2020-08-22
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
1) How am I supposed to use "Calculator" to convert changes in mouse wheel axis to changes in vJoy axis? I was thinking Op1 gets set to 0/100 depending on shift press/release, and then Op2 gets set when mouse scroll, but the problem with this is that once the mouse wheel isn't being scrolled anymore the op2 stays at whatever value it's been set to and thus the keeps modifying the vJoy axis even when mouse scrolling isn't being done
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
1) Key modifier: If I'm binding say my scroll wheel, I'd love to be able to bind SHIFT+Scroll wheel
2) Pause toggle: I want to be able to bind a key to "pause" the state of a virtual controller. For example, say I'm using vJoy and I've bound a mouse axis to a joystick axis, if the joystick is registering forward and right I should have a key that temporarily disables the mouse modification of the joystick, esentially pausing/saving/maintaining the state of the joystick.
3) Exponential modifier: Right now axis binds are linear, it would be nice if we could make them exponential. What I mean by this is, in the example of a mouse axis bound to a joystick axis, it would be nice if the mouse mapped exponentially to the joystick, meaning if you moved the mouse in the middle of the screen it would make very small changes to the joystick (allowing for extra precision for something like leveling a plane), while moving the mouse further would exponentially impact the bound joystick axis.
1) You can try the internal device "Calculator" (Boolean).
2) You can try the internal device "Program" (On / Off Binds).
3) Can you provide me with the math formula?
Currently, linear output: Output = Sensitivity * Input.
Exponential output: Output = Sensitivity * exp(Input)?
3) Is your program aware of the actual x/y axis values of the vJoy joystick? If not I'm not sure this is possible. Assuming the joystick x and y are on a range from -1 to 1 (full left and full right), I think you'd have to take the square root of the current x/y axis value, add that to 'Sensitivity * Input' and then square the the result (doesn't have to be square root and square, could be cube root and cube).
Ideally you'd just map the square of the mouse x/y distance from center of monitor to x/y-axis of the joystick, but (and I could be wrong about this because I'm quite new to your program), it doesn't seem like that kind of mapping is a capability and it would probably be a bit much to add such a functionality to easily support an exponential mapping instead of a linear
Last edit: Nerdsie 2020-08-22
1) How am I supposed to use "Calculator" to convert changes in mouse wheel axis to changes in vJoy axis? I was thinking Op1 gets set to 0/100 depending on shift press/release, and then Op2 gets set when mouse scroll, but the problem with this is that once the mouse wheel isn't being scrolled anymore the op2 stays at whatever value it's been set to and thus the keeps modifying the vJoy axis even when mouse scrolling isn't being done
Figured this out myself, ended up using shift to toggle the scroll bind
Currently, each axis independent. But some options have in internal device "Internal Joystick". It's ellipse border (x2/a2 + y2/b2 <= 1).
https://sourceforge.net/p/vjoy-controller/discussion/general/thread/cb9fbd3232/#36d8/be40