phetsims / bending-light

"Bending Light" is an educational simulation in HTML5, by PhET Interactive Simulations.
http://phet.colorado.edu/en/simulation/bending-light
GNU General Public License v3.0
8 stars 8 forks source link

Multiple rays on prisms screen has poor performance #74

Closed elisemorgan closed 9 years ago

elisemorgan commented 9 years ago

Test device: iPad2

Operating System: iOS 8.3

Browser: Safari

Problem description: When the laser has multiple rays it becomes a little slow to move even with no prisms. It lags even more when one prism is introduced and has significant lag when there are multiple prisms. When I tried to move the prisms out of the screen they lagged too. I also noticed that when there are multiple prisms, the Environment slider lag/skips.

Steps to reproduce: Turn on multiple rays and attempt to move laser around screen.

Severity: Minor since laser doesn't completely stop moving.

Screenshots:

Troubleshooting information (do not edit): Name: Bending Light URL: http://www.colorado.edu/physics/phet/dev/html/bending-light/1.0.0-dev.3/bending-light_en.html?showPointerAreas Version: 1.0.0-dev.3 2015-05-31 01:07:46 UTC Features missing: fullscreen Flags: pixelRatioScaling User Agent: Mozilla/5.0 (iPad; CPU OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12F69 Safari/600.1.4 Language: en-us Window: 1024x672 Pixel Ratio: 2/1 WebGL: WebGL 1.0 (OpenGL ES 2.0 Apple A8X GPU - 53.13) GLSL: WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.00) Vendor: WebKit (WebKit WebGL) Vertex: attribs: 16 varying: 8 uniform: 128 Texture: size: 4096 imageUnits: 8 (vertex: 8, combined: 8) Max viewport: 4096x4096 OES_texture_float: true Dependencies JSON: {"comment":"# bending-light 1.0.0-dev.3 Sat May 30 2015 19:07:45 GMT-0600 (MDT)","assert":{"sha":"903564a25a0f26acdbd334d3e104039864b405ef","branch":"master"},"axon":{"sha":"4875945b5eb9027d4994f6ffa990b664979c1d86","branch":"master"},"babel":{"sha":"8725cd18114c1307057c465a0762a3cf8f1cb1b9","branch":"master"},"bending-light":{"sha":"e99296da4f6ca1fff8fc142e89c34f7352c87eb4","branch":"master"},"brand":{"sha":"b3362651f1d7eddb7f8697d02400472f97f9d140","branch":"master"},"chipper":{"sha":"60c6645455a0692ec65c701c462399822599b1ef","branch":"master"},"dot":{"sha":"a6a50c92c4cda5f8a3371d8c357ea565b7e7bd6c","branch":"master"},"joist":{"sha":"55fd6884039c5ef2f2145093c8530beab5490233","branch":"master"},"kite":{"sha":"b915f3b160744e4833d177dc38e74e4cbc912883","branch":"master"},"phet-core":{"sha":"23834d107dc1cb368c00901c76927b712b9caa10","branch":"master"},"phetcommon":{"sha":"bb92c52cd90fdaa0c2a746fea82594afd439b4db","branch":"master"},"scenery":{"sha":"f09eddb7393946fcbedb63ebf6b88d1785c91bfc","branch":"master"},"scenery-phet":{"sha":"7ffc5a1a36e0afe36d035d0367078b3558fd157f","branch":"master"},"sherpa":{"sha":"ae2168a85ceb4094c23cd47ba5fe8145375448eb","branch":"master"},"sun":{"sha":"ee8f44af90bd8dfd7d13399ecb429348c94e8dd5","branch":"master"}}

samreid commented 9 years ago

Testing one circle prism with a 5-ray, and dragging the circle in the 5-ray, I see 7fps on iPad3 running iOS 8.4. Commenting out the rays ObservableArray only bumps this up to 12fps, so there is surely something else at play here.

samreid commented 9 years ago

Putting cssTransform:true on the prisms rockets this up to 15fps, which somehow feels fast enough. (Maybe my standards have been lowered?)

samreid commented 9 years ago

Multiple rays are much faster on iPad3. I'll move the above comments (specifically about prisms) into #167.