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)

Canvas


Perhaps no other HTML5 feature is as powerful as the canvas API with regards to game development for the web platform. Although we may have every other feature currently in the specification, as well as any forthcoming feature that the browser can possibly support, it would be nearly impossible to produce a high quality, engaging, fun game using HTML and JavaScript. The canvas API allows us to create 2D, as well as 3D graphics right on the browser. It also lets us manipulate the graphical data stored in the canvas context, down to the individual pixel level.

One major difference between a canvas graphic and an SVG graphic, apart from the fact that SVG graphics are vector-based, and canvas graphics are always raster graphics, is that the canvas is a single HTML element, and everything drawn in it is, for all practical purposes, non-existent to the browser. Thus, any event handling on individual entities drawn on a canvas must be handled at the application level. There are generic events...