Follow Us

We use cookies to provide you with a better experience. If you continue to use this site, we'll assume you're happy with this. Alternatively, click here to find out how to manage these cookies

hide cookie message

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

Article comments

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


More from Techworld

More relevant IT news


Send to a friend

Email this article to a friend or colleague:

PLEASE NOTE: Your name is used only to let the recipient know who sent the story, and in case of transmission error. Both your name and the recipient's name and address will not be used for any other purpose.

Techworld White Papers

Choose – and Choose Wisely – the Right MSP for Your SMB

End users need a technology partner that provides transparency, enables productivity, delivers...

Download Whitepaper

10 Effective Habits of Indispensable IT Departments

It’s no secret that responsibilities are growing while budgets continue to shrink. Download this...

Download Whitepaper

Gartner Magic Quadrant for Enterprise Information Archiving

Enterprise information archiving is contributing to organisational needs for e-discovery and...

Download Whitepaper

Advancing the state of virtualised backups

Dell Software’s vRanger is a veteran of the virtualisation specific backup market. It was the...

Download Whitepaper

Techworld UK - Technology - Business

Innovation, productivity, agility and profit

Watch this on demand webinar which explores IT innovation, managed print services and business agility.

Techworld Mobile Site

Access Techworld's content on the move

Get the latest news, product reviews and downloads on your mobile device with Techworld's mobile site.

Find out more...

From Wow to How : Making mobile and cloud work for you

On demand Biztech Briefing - Learn how to effectively deliver mobile work styles and cloud services together.

Watch now...

Site Map

* *