phetsims / resistance-in-a-wire

"Resistance in a Wire" is an educational simulation in HTML5, by PhET Interactive Simulations.
http://phet.colorado.edu/en/simulation/resistance-in-a-wire
GNU General Public License v3.0
1 stars 4 forks source link

[Android] flickering black spot when area is adjusted #158

Closed ghost closed 6 years ago

ghost commented 6 years ago

Test Device

Nye

Operating System

Android 7.0

Browser

Chrome

Problem Description

For phetsims/QA/issues/130. Adjusting area results in black flickering spot in wire. See the video.

Visuals

https://drive.google.com/open?id=1BMRqm18IVXWyJlvCYJSzJQ9RTncFS7HD

ghost commented 6 years ago

Also happens with length. Doesn't seem to matter what the rho value is.

zepumph commented 6 years ago

Very interesting! @lmulhall-phet does this happen from the published one http://phet.colorado.edu/sims/html/resistance-in-a-wire/latest/resistance-in-a-wire_en.html?@jonathanolson have you seen this before? Does it have something to do with rendering artifacts?

ghost commented 6 years ago

@zepumph, it does occur in production.

zepumph commented 6 years ago

Repeatable easily in the phet app on my android phone.

jonathanolson commented 6 years ago

Interesting. Definitely looks like something browser-specific, and it's putting a straight line between the the right-most and bottom-most point in the ellipse. Seems to trigger around a similar range.

Can you get it to a value where it stays broken? Hopefully running in rootRenderer=canvas "fixes" the issue?

zepumph commented 6 years ago

rootRenderer=canvas does indeed "fix" the issue for my android device. I can't make it stay broken, but I'm not the QA master.

ghost commented 6 years ago

@jonathanolson, I can't get it to stay broken. rootRenderer=canvas "fixes" the issue for me.

jonathanolson commented 6 years ago

@ariel-phet how should we proceed?

Working around it would involve some combination of trying imperceptible changes to the path, trying to come up with an easily reproducible example, etc.

ariel-phet commented 6 years ago

@jonathanolson @zepumph

Since ?rootRenderer=canvas fixes the problem, we should probably just do a platform specific change to that rendering solution. We have done this sort of thing mutliple times for iPad2 I believe.

@zepumph I am sure JO can point you to some appropriate examples.

ghost commented 6 years ago

rootRenderer=canvas drops the performance somewhat.

jonathanolson commented 6 years ago

Implemented above (just making the needed part Canvas instead of everything). Let me know if performance is not acceptable due to the change.

zepumph commented 6 years ago

I'll add this to a another RC so that @lmulhall-phet can test performance appropriately.

zepumph commented 6 years ago

@lmulhall-phet in phetsims/QA#137 (comment) you said that QA is done, so I assume that I'm good to close this issue, and that it was successfully checked.

ghost commented 6 years ago

@zepumph, sorry, yes it seems to be fixed.