How do you make a video game? Advanced Game Design with HTML5 and JavaScript is a down to earth education in how to make
video games from scratch, using the powerful HTML5 and JavaScript technologies. This book is a point-by-point round up
of all the essential techniques that every game designer needs to know.
You'll discover how to create and render game graphics, add interactivity, sound, and animation. You’ll learn how to
build your own custom game engine with reusable components so that you can quickly develop games with maximum impact and
minimum code. You’ll also learn the secrets of vector math and advanced collision detection techniques, all of which are
covered in a friendly and non-technical manner. You'll find detailed working examples, with hundreds of illustrations
and thousands of lines of source code that you can freely adapt for your own projects. All the math and programming
techniques are elaborately explained and examples are open-ended to encourage you to think of original ways to use these
techniques in your own games. You can use what you learn in this book to make games for desktops, mobile phones, s
or the Web.
Advanced Game Design with HTML5 and JavaScript is a great next step for experienced programmers or ambitious beginners
who already have some JavaScript experience, and want to jump head first into the world of video game development. It’s
also great follow-up book for readers of Foundation Game Design with HTML5 and JavaScript (by the same author) who want
to add depth and precision to their skills.
The game examples in this book use pure JavaScript, so you can code as close to the metal as possible without having to
be dependent on any limiting frameworks or game engines. No libraries, no dependencies, no third-party plugins: just
you, your computer, and the code. If you’re looking for a book to take your game design skills into the stratosphere and
beyond, this is it!
What youll learn
-----------------
* The latest JavaScript ES6, HTML and Canvas Drawing API skills you need to know to make games.
* Make game sprites, compose a scene graph, load and manage game assets, and how to use a texture atlas.
* Control the geometry and physics of the game world using vector math, the Separating Axis Theory (SAT), and advanced
collision detection strategies.
* Build a custom music and sound effects player for games using the WebAudio API.
* Keyframe animation and how to implement precise control over the frame rate and game loop.
* Learn how to make interactive sprites and buttons for the keyboard, mouse and touch.
* Create and manage game scenes, and learn how to make particle explosions and screen shake effects.
* Manage complexity to build games of any size that scale seamlessly.
Who this book is for
--------------------
Advanced Game Design with HTML5 and JavaScript is for video game developers with some experience who want to
learn the essential techniques they need to know to take their skills to the next level. It’s for readers who want to
understand and fine-tune every line of code they write, without resorting to quick fixes. All the techniques covered in
this book are core game design skills that can be applied to many other programming technologies.
Table of Contents
-----------------
1. Level-up: New JavaScript Tricks2. The Canvas Drawing API
3. Working with Game Assets
4. Making Sprites and a Scene Graph
5. Making Things Move
6. Interactivity
7. Collision Detection
8. Juice It Up: Keyframe Animation and Particles Effects
9. Sound with the WebAudio API
10. Tweening
11. Make Your Own Game Engine
Appendix A: Vectors for Movement and Collision Detection