GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

Post your working scripts, libraries and tools for AHK v1.1 and older
User avatar
gwarble
Posts: 524
Joined: 30 Sep 2013, 15:01

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

28 Jun 2018, 19:34

If you want to use EitherMouse to toggle this functionality on or off for specific devices, without handling RawInput yourself, you can use the rarely used and poorly documented "plugin" feature, which uses windows messages like so:

Code: Select all

 OnMessage(WM_EitherMouse:=DllCall("RegisterWindowMessage",Str,"EitherMouse"),"WM_EitherMouse")
 
 DetectHiddenWindows, On
 SendMessage,WM_EitherMouse,WM_EitherMouse,1,,ahk_exe EitherMouse.exe,,,,5000
 ActiveMouse := ErrorLevel

 If ActiveMouse = 2
  ;do something for mouse 2?
Return

WM_EitherMouse(wParam,lParam) {
 global ActiveMouse
 ActiveMouse := lParam
 SetTimer, DoSomething, -200
}
EitherMouse - Multiple mice, individual settings . . . . www.EitherMouse.com . . . . forum . . . .
User avatar
evilC
Posts: 4823
Joined: 27 Feb 2014, 12:30

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

29 Jun 2018, 12:27

I had a little play, but did not alter any of my pointer settings, however it seemed to work fine.
I couldn't really work out how to change the options after the initial run, I am also not sure why it needs to re-create the file, or also what is with the "will only work on this computer" message?
Also not sure why you need to mess with the pointer settings, I guess maybe because you are working with pixels (Cursor) not mickeys (RawInput)?
Functionally though (in terms of the physics implementation) it's really good.
I have a renewed interest in this subject as I came across a disabled gamer who was interested in this kind of tech, but wants to be able to set up a glide, then tweak it while it glides - ie a 2nd pad or something, but this is for 1st person shooters, so manipulating cursor position just ain't gonna cut it.
Now that I have AHI, the optimal solution seems to be your physics logic with my input manipulation techniques.
benderguy
Posts: 3
Joined: 19 Jun 2018, 09:55

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

15 Sep 2018, 09:50

Is there a guide to what each of the setup options means (in non-technical terms)? I saw in one of the comments that there are more options if I run it with capslock on. Is there any documentation about how this work, or other options?
User avatar
IOrot
Posts: 26
Joined: 16 Aug 2017, 15:33

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

04 Nov 2018, 12:31

evilC wrote:
29 Jun 2018, 12:27
I had a little play, but did not alter any of my pointer settings, however it seemed to work fine.
I couldn't really work out how to change the options after the initial run, I am also not sure why it needs to re-create the file, or also what is with the "will only work on this computer" message?
Also not sure why you need to mess with the pointer settings, I guess maybe because you are working with pixels (Cursor) not mickeys (RawInput)?
Functionally though (in terms of the physics implementation) it's really good.
I have a renewed interest in this subject as I came across a disabled gamer who was interested in this kind of tech, but wants to be able to set up a glide, then tweak it while it glides - ie a 2nd pad or something, but this is for 1st person shooters, so manipulating cursor position just ain't gonna cut it.
Now that I have AHI, the optimal solution seems to be your physics logic with my input manipulation techniques.
Great questions eC I will add them to a FAQ section.

How can I change GGGlide glide parameters?
Anytime you want to change GGGlide glide parameters you have to run GGGsetup and modify them via its GUI.

Why is a new GGGlide file created every time I run GGGsetup?

Using numerical values instead of variables make GGGlide run faster. So GGGsetup has a template, fills in any numerical parameters required and outputs the newly created GGGlide file. This happens every time you make changes via GGGsetup.

Why shouldn’t I copy a GGGlide script from one PC to another?
One of the baked-in GGGlide numerical parameters relates to the tick length of the time keeping counter and is CPU dependent. So a GGGlide script created in one machine is not portable to another.
If you want to replicate a GGGlide config you should copy the “.ini” file and GGGsetup to the new PC and run GGGsetup again. This will reproduce the same GGGlide experience (or you could note the GGGsetup parameters and enter them manually via the GUI).

Why modify the OS pointer settings?
When you alter the Windows pointer settings, the OS takes the pointing device input and scales it accordingly. Say the device reports displacement X and given your pointers Windows“sensitivity”, for example, it scales that to 0.5*X or 1.5*X (other settings affect things like pointer acceleration). Using the default settings suggested by GGGlide the OS does not interfere with the pointing device output, it is 1 to 1.
This way you eliminate some variables from the physics equation.
Also, usually these settings are used to increase the reach of the pointer (by increasing pointer sensitivity) but at the cost of fiddly short distance navigation. With GGGlide you are covered for long/medium pointer displacements and you might as well enjoy an increased short distance resolution and range of hand motion.
All that being said GGGlide works fine with any OS settings. It boils down to reproducibility and sharing of configurations.

I have never investigated how the RawInput "units" are derived. I do not know if the OS pointer movement modifications occur at Rawinput level or not. If it does not occur it could pose an issue with Rawinput data as they do not translate faithfully/linearly to on-screen pointer motion perceived by your eyes which must be extremely confusing to use and configure. On the other hand, if the OS scaling does occur at Rawinput you get the same issues as pixel-based data and modifying OS settings might be a good idea.
User avatar
IOrot
Posts: 26
Joined: 16 Aug 2017, 15:33

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

05 Nov 2018, 16:43

gwarble wrote:
28 Jun 2018, 19:34
If you want to use EitherMouse to toggle this functionality on or off for specific devices, without handling RawInput yourself, you can use the rarely used and poorly documented "plugin" feature, which uses windows messages like so:

Code: Select all

 OnMessage(WM_EitherMouse:=DllCall("RegisterWindowMessage",Str,"EitherMouse"),"WM_EitherMouse")
 
 DetectHiddenWindows, On
 SendMessage,WM_EitherMouse,WM_EitherMouse,1,,ahk_exe EitherMouse.exe,,,,5000
 ActiveMouse := ErrorLevel

 If ActiveMouse = 2
  ;do something for mouse 2?
Return

WM_EitherMouse(wParam,lParam) {
 global ActiveMouse
 ActiveMouse := lParam
 SetTimer, DoSomething, -200
}
Oh cool ! thanks for letting me know. I have taken a break atm but I will look into it! (Btw, I believe your site might be down).
User avatar
IOrot
Posts: 26
Joined: 16 Aug 2017, 15:33

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

14 Nov 2018, 09:37

benderguy wrote:
15 Sep 2018, 09:50
Is there a guide to what each of the setup options means (in non-technical terms)? I saw in one of the comments that there are more options if I run it with capslock on. Is there any documentation about how this work, or other options?
There is a short description of each parameter on the parameter input setup window. I will provide some screenshots and maybe provide some more information for each parameter. Just have Caps Lock on when launching GGGsetup to get the advanced menu. There are some more options related to bypassing the gui windows that appear before starting GGGlide and GGGsetup. I will also share my personal configuration. Also, if there are users which can contribute their configuration parameter sets I could include more default profiles, rather than having a single default.
aiamuzz
Posts: 1
Joined: 25 Jan 2019, 13:10

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

25 Jan 2019, 13:19

Hi,

This pointer momentum option works only on the Windows Operating system ?
I would like to have these feature on Linux ... anyway i can implement it on a Linux operating system ?
AMDad
Posts: 2
Joined: 24 Jan 2018, 21:34

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

11 Feb 2019, 04:17

Love this script!
However, I'd really like to increase the "friction" so that the momentum slows down sooner. How can I do that?
AMDad
Posts: 2
Joined: 24 Jan 2018, 21:34

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

12 Feb 2019, 22:53

Nevermind - I figured it out. :)
Had to enable the advanced options in the script. But then the OSD would not let me input any characters other than numbers (no negative or decimal values), so I instead went to the .ini file and replaced the numbers there (what I was looking for was the Glide Rate value).

Found my perfect setup...

300
70
1200000
0.665 (Glide distance)
-2.1 (Glide rate)

Thanks again for this awesome script!
TheManFromGyna
Posts: 1
Joined: 22 Aug 2020, 16:07

Re: GGGlide - Mouse Pointer Momentum [v1.97.1](ergonomic/productivity enhancement)

22 Aug 2020, 16:12

Hi - Just wanted to thank you for this. 2 years later and still needed/working great. With touchpad drivers now being replaced with "Windows precision drivers" this functionality is even harder to find/enable natively.

:bravo:

Return to “Scripts and Functions (v1)”

Who is online

Users browsing this forum: No registered users and 155 guests