You know what's even better than playing games? Programming your own! Make your own online games, even if you're an absolute beginner. Let your imagination come to 3D life as you learn real-world programming skills with the JavaScript programming language - the language used everywhere on the web. This new edition is completely revised, and takes advantage of new programming features to make game programming even easier to learn. Plus, new effects make your games even cooler. When you're done, you're going to be amazed at what you can create. Jump right in! Start programming cool stuff on page 1. Keep building new and different things until the very last page. This book wants you to play. Not just play games, but play with code. Play with programming. Because the best way to learn something is to have fun with it! This second edition is updated from start to finish to make it even easier to get started programming in JavaScript. Every example has been updated to make it easier, with new example games to explore and new 3D effects that make your games even more fun! Want a red donut? You can make hundreds of them, spinning around like mad. Want to create a star field? Make a hundred or a thousand stars. Make them red, green, or blue. Explosions? Fireworks? Planets? It's up to you. And, using a code editor created especially for this book, you'll program right in your web browser. You'll see the results of your work and imagination right away - right next to the code that you just typed! Along the way, you'll pick up a ton of programming knowledge, and dive in even deeper with some more advanced chapters. Whatever you want to do, this book has your back. Best of all, you get to create awesome games and say, "I made this!" What You You need the latest version of the Google Chrome Web browser, available for free from You also need an Internet connection to access the ICE Code Editor the first time. ICE Code Editor will be loaded onto your computer, so you won't need Internet access for later projects.
Like for many, my introduction to computers and computer programming came about with the advent of the home computer in the early 1980s. By keying in programs that were contributed by fellow enthusiasts and printed in the plethora of home computing books and magazines that were available, users were able to develop their interests in computer programming and gain valuable programming and debugging skills.
With the aim of promoting interest in computer programming among younger readers, this book harks back to those days by encouraging its readers to 'type in' and experiment with short but fun, interesting and complete game programs.
The games are all written in JavaScript and run in a browser. A link to simple browser-based interactive development environment is provided. External 3D and physics libraries are used, so the focus is very much on programming gameplay, using high-level 3D abstractions, rather than the details of 3D graphics programming per-se.
The games serve as vehicles for an introduction to simple program design techniques, including abstraction using functions and objects, and their application using JavaScript. In addition the games are used to introduce a variety of concepts and techniques that arise in 3D and games programming.
Throughout the text, the reader is offered pragmatic advice and, facilitated by the author’s selection of an interpreted language, is encouraged to experiment with and extend the code. Usefully, early on, the book offers advice on what to do when things don’t work as expected, including how to use the JavaScript console to try to find coding errors and how to reset the IDE.
The book is written in a clear but chatty style. Each chapter has a short description of its learning objectives and, where appropriate, simple sketches are used to help describe and reinforce ideas and concepts. Embedded sections are used to expand upon tips and warnings that emerge during the chapter without interrupting the flow of the main text. Chapters that involve game development evolve the code over the course of the chapter, but an appendix contains complete code listings for each game, serving as a useful reference. The final chapter includes a very brief description of the world wide web and describes practical ways in which readers can share their games on the web.
The book has a supporting website, which includes downloadable source code, though I think that maximum benefit will be gained by those readers that actually type the code.
As its title suggests, this book is aimed at younger readers, however even as an older reader with several years programming experience, I found it an enjoyable read, learned a few new things and had fun playing with the code.
Reviewed by: Dr Patrick Hill CEng MBCS CITP FIAP MIEEE