Game Development for the Web

The PROBLEM

  • Write a browser extension
      • No true portability
  • DHTML? HTML5?

  • The <canvas> element is slow & quirky
    • Only one 2D Rendering API
    • Only one 3D Rendering API (At an experimental state)
  • Flash is dead (well not yet but it's less relevant)
      • Closed and propietary
      • The web is not a movie
      • The web is not a plugin
      • The web is not a single vendor
      • The web is not a single technology

The RELEVANce

  • Every device access the Web through a browser
  • Lots of content built using established languages that need to be ported
      • Existing tools
  • Browser games run isolated from hardware
      • Thus portability comes by default
  • Due to the accessibility of browser games, they are often played in more frequent, shorter sessions compared to traditional computer games

The Solution

  • Native code in the browser
    • Don’t rewrite your engine, just adapt your I/O & rendering code if necessary.
    • Compile for a new target
      • Google NaCl (Native Client). 
        • Transform to “pexe” using Pepper. (Bastion)
      • Mozilla’s Asm.js. Transform to Compiled JavaScript using Emscripten. (Unreal Engine 3)
    • HTML is available
    • JavaScript is available
    • CSS is available
    • The Cloud at your fingertips

Game Development for the Web Browser

By Raúl G. Roa Gómez

Game Development for the Web Browser

  • 260