phetsims/molecule-shapes

branch: context-loss-canvas

Opened this issue · 7 comments

Work for switching to Canvas on a context-loss, instead of just showing a failure message and requiring a reload. This may be an option for the future, so we're keeping the code around.

For reference, over the last month about %0.2 of Molecule Shapes (and Basics) runs resulted in a context loss. Of those context losses, 80% of them occurred in just 2 days (probably either one user retrying, or a few classrooms that all had issues).

I can actually reliably cause a context loss with the MacBook Air (Chrome) by having the sim open on one of the screens and then plugging in the external monitor. Seems like something that teachers/instructors would do.

@jonathanolson - what is the status of this issue?

@ariel-phet, it's minorly annoying to have to restart the sim when I plug in/out the monitor, but since we have the detection working, a button that will trigger a restart, and due to the difficulty of properly fixing, I'm inclined to leave this open at at low priority.

Sounds good, will mark as bug and leave open unassigned

I don't really understand this issue.

Basically right now certain situations (unplugging and replugging a monitor, swapping a graphics card in/out or upgrading drivers, graphics driver crashes, etc.) where WebGL won't be able to continue working. Right now it pops up a dialog with a button that will refresh the sim (to get it working again).

It would be possible to alternatively detect this and switch to the canvas (fallback) rendering.