aduros / flambe

Rapidly cook up games for HTML5, Flash, Android, and iOS.
https://github.com/aduros/flambe/wiki
MIT License
744 stars 117 forks source link

Chrome 36 webgl performace #281

Open mikedotalmond opened 10 years ago

mikedotalmond commented 10 years ago

This isn't really a bug that you can do anything about, but it looks like the latest Chrome release (36) degrades WebGL performance considerably on certain 'old' graphics cards.

https://code.google.com/p/chromium/issues/detail?id=365078#c17

I've had to abandon the use of WebGL and force Flambe to use canvas because of it. Luckily, in my case, the canvas renderer runs just as fast as WebGL did before the Chrome update... but I would think it likely that some of the games made with Flambe that use WebGL could now be considerably slower in Chrome for some users.

aduros commented 10 years ago

I'm not sure if there's anything Flambe can do if it's a Chrome regression. Is it possible to detect the regression and blacklist the WebGL renderer at load time?

Ideally Chrome fixes it on their end soon.

mikedotalmond commented 10 years ago

Yeah... here's hoping that they do.

That's the only other solution I could think of - detect if loaded into Chrome 36 or later and make it use canvas. But you probably only want to force it to use canvas on the older GPUs where it actually runs slowly... and detecting the GPU and/or its performance is probably the tricky part.

th3d0g commented 10 years ago

This is also an issue for me, getting like 13 FPS with WebGL renderer. Get 60 FPS on other versions of Chrome and on other browsers.

Sadly, swapping to a Canvas renderer only squeezed a few more FPS at around 20 FPS. :-(

@aduros @mikedotalmond You guys heard any more on the matter?

SavedByZero commented 10 years ago

Chrome also doesn't display the colors of objects to which I apply the irregular shaped masks (As described in the guide), though they show up fine in firefox. (this is the html5 build I'm talking about)