Book Image

Hands-On Game Development with WebAssembly

By : Rick Battagline
Book Image

Hands-On Game Development with WebAssembly

By: Rick Battagline

Overview of this book

Within the next few years, WebAssembly will change the web as we know it. It promises a world where you can write an application for the web in any language, and compile it for native platforms as well as the web. This book is designed to introduce web developers and game developers to the world of WebAssembly by walking through the development of a retro arcade game. You will learn how to build a WebAssembly application using C++, Emscripten, JavaScript, WebGL, SDL, and HTML5. This book covers a lot of ground in both game development and web application development. When creating a game or application that targets WebAssembly, developers need to learn a plethora of skills and tools. This book is a sample platter of those tools and skills. It covers topics including Emscripten, C/C++, WebGL, OpenGL, JavaScript, HTML5, and CSS. The reader will also learn basic techniques for game development, including 2D sprite animation, particle systems, 2D camera design, sound effects, 2D game physics, user interface design, shaders, debugging, and optimization. By the end of the book, you will be able to create simple web games and web applications targeting WebAssembly.
Table of Contents (18 chapters)

Designing a 2D Camera

Camera design is one of those things that is frequently forgotten by novice game designers. Up to this point, we have had what is called a fixed position camera. There is a single screen with no change in perspective. In the 1970s, almost all of the early arcade games were designed this way. The oldest game that I have found with any sort of camera was Atari's Lunar Lander, which was released in August 1979. Lunar Lander was an early vector-based game that would zoom the camera in as the lander neared the surface of the moon, and would then pan the camera out to follow your lander as it approached the surface.

In the early 1980s, more games began experimenting with the idea of a game world that was larger than a single game screen would allow. Rally X was a Pac-Man-like maze game released in 1980 by Namco, where the maze was larger than a single display...