Impact

This forum is read only and just serves as an archive. If you have any questions, please post them on github.com/phoboslab/impact

9 years ago by stillen

Been busy with other projects, so I haven't had been here for awhile, but I keep seeing all this online buzz about how awesome iOS8 WKwebview is and how it will really boost performance on hybrid apps.

https://www.scirra.com/blog/150/html5-game-performance-on-ios-8

The claims seem to be very in favor of safari being able to perform better then ejecta and that the the WKwebview would be able to render more sprites as well. I was reading about the new interface where you easily call native features from web apps as well.

9 years ago by stahlmanDesign

Interesting:
Due to security restrictions on iOS, wrappers have typically not been able to use JIT compilation to fully optimise Javascript. This forces the Javascript engine to stay in interpreter mode, and can be several times slower than the JIT-optimising Safari browser. Often the slower Javascript engine puts a low cap on how well games can perform. iOS 8 finally allows apps using the web view to use JIT compilation (which PhoneGap needs to be updated to take advantage of - more on this later). However since the non-browser wrappers use a custom engine instead of the web view, they still appear to be stuck to interpreter mode and show no performance improvement at all on iOS 8.


And later:
The end of the wrappers
The non-browser wrapper engines CocoonJS and Ejecta were designed when the UIWebView was software-rendered and lacked WebGL support. Their main appeal was better performance due to their WebGL support and use of GPU-accelerated rendering. However they no longer have a performance advantage, and have a real feature support disadvantage. In the near future, they'll actually have a large performance disadvantage too. Given they will end up both slower and with poorer feature support than PhoneGap, it's hard to see what purpose they will serve in the long term. This was a significant factor in our decision to deprecate CocoonJS support in r179, and for similar reasons we expect to eventually deprecate Ejecta support as well in favour of PhoneGap.


Conclusion:
Conclusion
iOS 8 brings huge performance improvements for HTML5 games today. It is of particular importance to games using WebGL shader effects, particle effects, high object counts, tiled backgrounds/tilemaps, or publishing with PhoneGap. In the long term it means fantastic support for native iOS games using PhoneGap, and the likely demise of non-browser wrapper engines.

Now every major desktop and mobile platform supports high-performance JIT-compiled Javascript and WebGL support (even Internet Explorer!). We've never been more sure that the web is the platform, and that HTML5 gaming is the future.
Page 1 of 1
« first « previous next › last »