Ubisoft Pirate ships sail onto the Web thanks to Microsoft JavaScript library

The new Web version of Assassin's Creed Pirates relies on Microsoft's Babylon.js library for smooth performance

Ubisoft's Assassin's Creed Pirates, as seen, for the first time, within a browser.

Ubisoft's Assassin's Creed Pirates, as seen, for the first time, within a browser.

A Microsoft JavaScript library for rendering three-dimensional environments played an instrumental role in helping game developer Ubisoft build a version of its Assassin's Creed Pirates that can be run in the Web browser.

For Microsoft, Ubisoft's use of the Babylon.js framework shows how much more depth developers and designers can add into their Web games and applications with the use of rapidly advancing open technologies such as HTML5, JavaScript and WebGL.

The game "really pushes the limits of what is possible on the Web across browsers and devices," said Justin Garrett, Microsoft senior product manager for Internet Explorer.

Until now, Ubisoft only offered Assassin's Creed Pirates for smart phones and tablets; this is the first appearance of the game for the Web.

Work on this game could pave the way for Ubisoft to more closely bridge the Web and mobile versions of its games, wrote Ubisoft studio manager François Bodson in an email interview.

The Web edition of Assassin's Creed Pirates, released Monday, allows the user to captain a pirate ship through the Caribbean seas, while avoiding mines. It doesn't offer the ability to shoot other pirate ships, though it does come with controls to adjust the ship's direction, speed and weather patterns in the game.

While there is no shortage of Web games, Assassin's Creed Pirates has a number of advances, Garret said. It is one of the first games on the Web with a responsive design, he said, referring to how game scenery flows into the browser no matter the size of the window.

Nor is this game a simple side-scroller; players guide their ships forward, over a 3D ocean. The game can be easily played with touch-sensitive devices, though it also has keyboard and mouse controls for non-touch computers. It works on all browsers (though it does not run on Apple iPhones or iPads).

David Catuhe, a Microsoft senior program manager for HTML5 and open Web standards, created the Babylon.js library to help developers build games and immersive Web applications using HTML5 and WebGL (Web Graphics Library), a JavaScript library of functions for rendering three dimensional imagery.

Though Babylon.js operates as a game engine, it could be used for other forms of immersive three-dimensional Web applications as well, Garrett noted.

Catuhe subsequently ported the code to Microsoft's Typescript, a superset of JavaScript designed to ease many of the tasks of large-scale application development.

Ubisoft had created versions of the popular Assassin's Creed series of adventure games for a wide variety of platforms, including the Sony PlayStation, Microsoft Xbox 360, Microsoft Windows and the Apple Macintosh. Creating a browser-based version of the game would be a challenge, in that, at least traditionally, browsers haven't offered the responsiveness of a desktop application.

To produce an acceptable Web version of the game, Ubisoft needed the browser to produce a steady 60 frames per second. The development team used a two-year old GPU as a benchmark, to approximate the average game user's computer.

That the Babylon.js was well optimized, through TypeScript, helped keep memory and processor usage in an acceptable range, wrote Christian Nasr, a Ubisoft programmer on the project, in an email. Because the library was open source Ubisoft was able to add features into its game that weren't offered by Babylon.js itself.

WebGL helped as well in that it allowed the game to access GPU hardware acceleration, allowing the team to make some "awesome shaders," Nasr wrote. Shaders provide the depth and texture of colors being rendered on-screen.

The chief challenge, however, was keeping the size of the game file as compact as possible, so it can be downloaded within a tolerable period of time. "You have to minimize file size while keeping the best quality. That was a real challenge," Nasr wrote.

Overall, Babylon.js provided the experience of "a very straightforward [game] engine," Nasr wrote.

Joab Jackson covers enterprise software and general technology breaking news for The IDG News Service. Follow Joab on Twitter at @Joab_Jackson. Joab's e-mail address is Joab_Jackson@idg.com

Join the PC World newsletter!

Error: Please check your email address.

Tags Mobile gamesapplication developmentUbisoftMicrosoftgamesPC-based gamessoftwaregame softwareDevelopment tools

Struggling for Christmas presents this year? Check out our Christmas Gift Guide for some top tech suggestions and more.

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Joab Jackson

IDG News Service

Most Popular Reviews

Follow Us

Best Deals on GoodGearGuide

Shopping.com

Latest News Articles

Resources

GGG Evaluation Team

Kathy Cassidy

STYLISTIC Q702

First impression on unpacking the Q702 test unit was the solid feel and clean, minimalist styling.

Anthony Grifoni

STYLISTIC Q572

For work use, Microsoft Word and Excel programs pre-installed on the device are adequate for preparing short documents.

Steph Mundell

LIFEBOOK UH574

The Fujitsu LifeBook UH574 allowed for great mobility without being obnoxiously heavy or clunky. Its twelve hours of battery life did not disappoint.

Andrew Mitsi

STYLISTIC Q702

The screen was particularly good. It is bright and visible from most angles, however heat is an issue, particularly around the Windows button on the front, and on the back where the battery housing is located.

Simon Harriott

STYLISTIC Q702

My first impression after unboxing the Q702 is that it is a nice looking unit. Styling is somewhat minimalist but very effective. The tablet part, once detached, has a nice weight, and no buttons or switches are located in awkward or intrusive positions.

Latest Jobs

Shopping.com

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?