Book Image

Learn HTML5 by Creating Fun Games

By : Rodrigo Silveira
Book Image

Learn HTML5 by Creating Fun Games

By: Rodrigo Silveira

Overview of this book

HTML is fast, secure, responsive, interactive, and stunningly beautiful. It lets you target the largest number of devices and browsers with the least amount of effort. Working with the latest technologies is always fun and with a rapidly growing mobile market, it is a new and exciting place to be."Learn HTML5 by Creating Fun Games" takes you through the journey of learning HTML5 right from setting up the environment to creating fully-functional games. It will help you explore the basics while you work through the whole book with the completion of each game."Learn HTML5 by Creating Fun Games" takes a very friendly approach to teaching fun, silly games for the purpose of giving you a thorough grounding in HTML5. The book has only as much theory as it has to, often in tip boxes, with most of the information explaining how to create HTML5 canvas games. You will be assisted with lots of simple steps with screenshots building towards silly but addictive games.The book introduces you to HTML5 by helping you understand the setup and the underlying environment. As you start building your first game that is a typography game, you understand the significance of elements used in game development such as input types, web forms, and so on.We will see how to write a modern browser-compatible code while creating a basic Jelly Wobbling Game. Each game introduces you to an advanced topic such as vector graphics, native audio manipulation, and dragging-and-dropping. In the later section of the book, you will see yourself developing the famous snake game using requestAnimationFrame along with the canvas API, and enhancing it further with web messaging, web storage, and local storage. The last game of this book, a 2D Space shooter game, will then help you understand mobile design considerations.
Table of Contents (14 chapters)

Web workers


Web workers bring the ability to execute code outside the main UI thread. This thread-like behavior allows us to perform long lasting tasks without blocking the user interface. When a JavaScript task takes too long to complete, the browser displays an alert to the user, letting the user know that the page is not responsive. Using web workers, we can solve this problem.

There are a few restrictions with web workers that we need to keep in mind. First, workers run outside the DOM, so any functionality related to that is not available inside worker threads. Also, there is no concept of shared memory with workers—any data that is passed to and from a worker is copied into its own memory space. Finally, any objects passed to and from a worker can contain any data types, except for functions. If you attempt to pass a function to or from a worker (or an object holding a reference to a function), the browser will throw a DataCloneError (DOM Exception 25).

On the other hand, workers are...