- Full Description
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, tablets or the Web.
What youll learn
- 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
- Table of Contents
2. The Canvas Drawing API
3. Working with Game Assets
4. Making Sprites and a Scene Graph
5. Making Things Move
7. Collision Detection
8. Juice It Up: Keyframe Animation and Particles Effects
9. Sound with the WebAudio API
11. Make Your Own Game Engine
Appendix A: Vectors for Movement and Collision Detection
- Source Code/Downloads
If you think that you've found an error in this book, please let us know by emailing to firstname.lastname@example.org . You will find any confirmed erratum below, so you can check if your concern has already been addressed. No errata are currently published