A team of enterprising developers has managed to port Quake 2 to play in a browser, complete with audio, standard keyboard input and multiplayer support.
The port is based on a game engine known as Jake2, a port of id Software’s Quake 2 engine written entirely in the Java language. To get the game running quickly in the browser, however, developers Ray Cromwell, Joel Webber and Stefan Haustein used the Google Web Toolkit to compile the game into JavaScript, then packed it full of cutting-edge web technologies like WebGL for rendering, WebSockets for multiplayer support, the HTML5 Canvas API, the HTML5 local storage API and the HTML5 <audio> tag to bring everything together.
Though JavaScript is often criticized for being sluggish, in-browser performance on Chrome and Safari, the web’s most advanced browsers, was quite robust.
“The various team members got varying fps depending on their machines. A Linux notebook managed 60fps, a Mac Pro got 45fps, and a Macbook Pro got 25fps,” writes Dion Almaer, the Director of Developer Relations at Palm. “WebKit was able to perform the best of the browsers right now because it doesn’t have the multi-process per tab tax that means a lot of OpenGL buffer copying.”



Articles RSS