WebVR: still animating when stopped at breakpoint |
|||||
Issue descriptionChrome Version: beta 59.0.3071.36 OS: Android Device: Samsung S8 (I wasn't able to reproduce this on a Pixel XL) What steps will reproduce the problem? (1) Open https://webvr.info/samples/03-vr-presentation.html on device (2) Open chrome://inspect/?tracing#devices on desktop, use USB debugging (3) Set a breakpoint on the first line of onAnimationFrame ("stats.begin();") (4) if needed, press "continue" in debugger a few times, move phone What is the expected result? Animation should be stopped while paused in debugger What happens instead? Animation often continues, with FPS counter showing high values such as 180fps, while the "Paused in debugger" icon is showing onscreen.
,
May 16 2017
From issue 719013 VrShell was getting into a loop trying to set the system ui flags and failing. Once that loop is stopped this behavior stops as well. I'm not sure if the behavior described here is expected in that scenario, but it doesn't sound like a scenario we need to account for on it's own so I'm inclined to close this as won't fix once we resolve the underlying issue.
,
May 16 2017
This is less critical now that we can fix the behavior. However, I think it's worth investigating how we get a second JS thread as a result and if this points to any issues with the implementation.
,
Jun 5 2017
I'm seeing this on the pixel. It also causes the debugger to crash the render process sometimes in debug builds. I don't think we have any extra threads - the problem is we don't know we are suspended. We create our own ScriptedAnimationController, which misses suspend calls from the document, so doesn't know that it shouldn't call into javascript. The fix could be making vrdisplay a SuspendableObject, and ensuring we get suspend callbacks as appropriate, to pass them onto our ScriptedAnimationController. There might be other weirdness/missed callbacks with our ScriptedAnimationController, so I'll double check those as well. Stealing this one from Klaus, as it has been annoying for my debugging for a little while. If you are working on it, feel free to take it back.
,
Jun 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dfb76f24c05c31ce433a30fc9b774b25c01c89da commit dfb76f24c05c31ce433a30fc9b774b25c01c89da Author: billorr <billorr@chromium.org> Date: Thu Jun 08 20:12:07 2017 Fix WebVR so we don't animate while stopped at a JS breakpoint While stopped at a JavaScript breakpoint, we shouldn't call into Javascript. BUG= 719101 Review-Url: https://codereview.chromium.org/2926953002 Cr-Commit-Position: refs/heads/master@{#478068} [modify] https://crrev.com/dfb76f24c05c31ce433a30fc9b774b25c01c89da/third_party/WebKit/Source/modules/vr/VRDisplay.cpp [modify] https://crrev.com/dfb76f24c05c31ce433a30fc9b774b25c01c89da/third_party/WebKit/Source/modules/vr/VRDisplay.h
,
Jun 8 2017
,
Jul 4
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by ddorwin@chromium.org
, May 6 2017Labels: -Pri-2 M-60 Pri-1
Status: Available (was: Untriaged)