WebGL: Pushing HTML5 To The Next Level
Since our studio opened 17 years ago, Splashworks, has created hundreds of games for various clients and brands. While what makes a game fun and enjoyable hasn’t evolved that much over the years, how a game is developed and where it’s played has changed dramatically. We started with games that were desktop-browser focused; now, the focus is on a mobile experience. Splashworks has developed many native mobile apps for our clients, and we continue to do so; but we also needed a solution for games that didn’t depend on the ecosystems of the Apple or Google app stores. This is why HTML5 became part of our arsenal of tools.
HTML5 lets us craft an experience for both desktop and mobile browsers. The responsive design of these games allows us to develop a single build that leverages mouse and keyboard controls, as well as the touch controls of mobile devices. However, while HTML5 has been a great solution for client and developers, it has some shortcomings that limit what can be done efficiently across all devices and browsers. For example, Canvas rendering is not ideal for complex animations or physics and for real-time 3D games. As game developers, these are things that we’d love to use—and not worry about (or at least be able to minimize) technology limitations. Consequently, as we move forward, we’re looking at WebGL to help us develop the most cutting-edge and superior HTML5 games.
Splashworks uses WebGL rendering in its HTML5 games whenever possible. However, in order for those games to be compatible on as many devices as possible, we always need a Canvas rendering “fallback” for those devices/OS/browsers that don’t support WebGL. Essentially, this means our development is constrained by the limits of Canvas rendering.
Currently, WebGL is compatible with all the latest versions of popular desktop and mobile browsers. But in some cases—like Internet Explorer and Safari on iOS—it is not compatible with older versions of the browser. This means that users who haven’t updated to the latest software/hardware for their devices will probably not be able to play a WebGL-only HTML5 game.
Fortunately, we are already seeing how this is about to change.
Recently, Apple released numbers indicating that approximately 85% of iOS users had already upgraded to iOS 8 (which is WebGL compatible). With iOS 9 coming out this fall, that percentage is going to continue to grow.
In addition, Microsoft is releasing Windows 10 this summer as a free upgrade. So, people on desktop and laptop PCs will be more likely to upgrade and have WebGL-compatible browser availability.
As the compatibility numbers across all platforms quickly approach 90%, now is the time to start to seriously consider WebGL features in an HTML5 game.
Unity and WebGL
The tools available to create amazing WebGL content continue to grow, and one of the most exciting ones we’ve used is Unity. It’s a cross-platform development tool that we’ve employed in creating games for both iOS and Android. One strong advantage of Unity is that we can now create stunning WebGL content for desktop browsers without the need for a plug-in.
Splashworks already has some WebGL projects in development and we plan to continue growing this expertise. As we push forward to produce HTML5 WebGL games, we hope to help our clients create some of the most cutting-edge game experiences found on both desktop and mobile browsers.