New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 780404 link

Starred by 3 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug

Blocking:
issue 919921



Sign in to add a comment

Relative Mouse movement inconsistent results

Reported by esent...@gmail.com, Nov 1 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Safari/537.36

Steps to reproduce the problem:
1. Have to use Chrome Canary, because regular Chrome has a bug which can't open this page, and have to use on Windows using a Mouse (not touchpad)
2. Open http://esenthel.com/site/Esenthel%20Fantasy%20Demo/Esenthel%20Fantasy%20Demo.html
3. After page finishes loading and you see 3D, hold left mouse button on the screen, and move left and right to rotate camera
4. If I move left then the camera rotates fast, if I move right, then the camera rotates slow.
5. If I use a touchpad, then the results are OK
6. If I use touchscreen, then the results are OK
7. If I try this on FireFox, then everything always works OK (mouse, touchpad, touchscreen)

What is the expected behavior?
Camera should rotate with the same speed when moving left or right

What went wrong?
I'm getting inconsistent relative mouse movement events. 
Moving to the left is much faster than to the right.

I'm using this code:
static EM_BOOL MouseMove(int eventType, const EmscriptenMouseEvent *e, void *userData)
{
   Ms._delta_relative.x+=e->movementX;
   Ms._delta_relative.y-=e->movementY;
   return 0;
}

If I use just this:
static Int P; // FIXME
static EM_BOOL MouseMove(int eventType, const EmscriptenMouseEvent *e, void *userData)
{
   P+=e->movementX; LogN(S+P); // FIXME
   return 0;
}

Then I notice that after moving my mouse in circles or 8 shapes, then the P keeps getting smaller and smaller, instead of being close to zero.

I have a "Steelseries Rival 500 MMO Gaming Mouse"
It has acceleration/deceleration disabled.
If I switch to another mouse (Logitech) nothing changes and problem is the same.

Did this work before? N/A 

Does this work in other browsers? Yes

Chrome version: 62.0.3202.75  Channel: stable
OS Version: 10.0
Flash Version: 

Works OK on FireFox so it looks like it's a Chrome issue.
 
Labels: Needs-Triage-M62
Cc: sc00335...@techmahindra.com
Components: IO>Mouse
Labels: Needs-Feedback
Unable to reproduce this issue on reported version 62.0.3202.75 as we are seeing error on navigated to given link[Attaching screenshot of same]. Checked on latest canary 64.0.3255.3 and unable to reproduce this issue with steps mentioned below.

1.Launched canary and navigated to http://esenthel.com/site/Esenthel%20Fantasy%20Demo/Esenthel%20Fantasy%20Demo.html
2.After page loads holded left mouse button on the screen, and moved left and right to rotate camera.
3.No difference is seen on moving from left to right vs right to left. Attaching screencast of same.

@Reporter: Could you please check the screencast and let us know if we miss anything. And also please check the same on fresh profile which doesn't have any apps/extensions.

Thanks!
Issue 778404.mp4
20.7 MB Download
Issue 780404.png
78.5 KB View Download

Comment 3 by esent...@gmail.com, Nov 3 2017

Hi,

I see that it works OK for you, however it doesn't work OK for me, I'm attaching a video, where you can see it works fine on FireFox, but on Canary moving left is 2x faster than moving right.
That's a fresh Canary install, no profile, no extensions.
Untitled.mp4
10.1 MB View Download
Project Member

Comment 4 by sheriffbot@chromium.org, Nov 3 2017

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding requester "sc00335628@techmahindra.com" to the cc list and removing "Needs-Feedback" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 5 by esent...@gmail.com, Nov 3 2017

Hi,

I was able to find out to what this is related to.

You need a professional mouse, that can do very fast polling.

Both of my mice are good quality, and the SteelSeries Rival 500 that I'm using, has 1000Hz polling rate. If I decrease it to the lowest setting 125Hz, then it all starts to work better. Left/right movement have similar speed.

But if I set it to the highest 1000Hz, then speeds are different.

I don't know what's exactly at fault, or how are you processing the relative mouse input, but I think it should be like this:
-accumulate the mouse deltas every time mouse sends some input
-call the html5/emscripten callback once per frame, with entire accumulated input so far
-clear accumulated input to 0
-repeat
Labels: TE-NeedsTriageFromMTV
This requires SteelSeries Rival 500 mouse to triage this. Hence adding 'TE-NeedsTriageFromMTV' label for MTV team to have a look into this as Hyd team doesn't have mouse specified.

Thank you!

Comment 7 Deleted

Cc: dtapu...@chromium.org nzolghadr@chromium.org
Owner: eirage@chromium.org
Status: Assigned (was: Unconfirmed)
eirage@ can you investigate?

Comment 9 by eirage@chromium.org, Jan 11 2018

Components: Blink>Input>PointerLock

Comment 10 Deleted

Comment 11 by xilef...@gmail.com, Feb 13 2018

I have the same issue, not only in my game but also in this game: http://phoboslab.org/xibalba/

clientX works perfectly, but as soon as I enable pointerlock, movementX gives me incorrect results when moving my mice to the right. Moving it to the left gives correct results.

Firefox gives correct results.

Mouse: R.A.T 7 madcatz mouse
Browser: Chrome 64.0.3282.140 (Official Build) (64-bit)

Edit: Same issue with movementY. Both properties give incorrect results when going into positive direction.
xilefmail@, do you have this issue on Windows or other OS? Could you test if you can reproduce it on canary channel? Thanks!

Comment 13 by xilef...@gmail.com, Feb 13 2018

I'm on windows 10, canary 66.0.3346.0 gives correct results, great!
Blocking: 919921

Sign in to add a comment