Learning HTML5 Game Programming: A Hands-on Guide to Building Online Games Using Canvas, SVG, and WebGL Paperback – Sep 25 2011
|New from||Used from|
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
To get the free app, enter your e-mail address or mobile phone number.
About the Author
James L. Williams is an experienced Silicon Valley developer and speaker who has presented worldwide on Java, user interfaces, and game programming. He created SwingXBuilder, a domain-specific language for creating user interfaces utilizing SwingX components, and is co-despot of Griffon, a framework for building rich applications with Groovy. While riding a coach bus to South by Southwest Interactive (SXSW), he and his team conceived, coded, and created a winning product in the StartupBus 2011 competition.
Inside This Book(Learn More)
Top Customer Reviews
Most Helpful Customer Reviews on Amazon.com (beta)
My resource from this time on has been what others have posted on the Internet.
I was excited to hear about the book "Learning HTML5 Game Programming" and even more excited to read it.
Below is my brief analysis of every chapter, but overall I found this book to be quite value to anyone interested in learning HTML5 programming but haven't really explored it, they should really get this book. I am not a professional HTML5 game developer, but as a hobbyiest I found this quite beneficial. It is well written, well organized, and covers what I feel are very important topics. Compared to what books that are currently out there, this is definitley one of best books to get on this subject to my knowledge.
Chapter 1, "Introducting HTML5", give a nice history of
Web technologies and a nice background of the
technologies through the years. While it's not necessary
to read, it is well worth reading.
Chapter 2, "Setting Up Your Development Environment", is
a very welcome and much needed chapter. While most books
would brush over this topic, this book does the courtesy
of dedicating a chapter to setting up the development
environment! On top of an entire chapter, he graciously
suggests free tools to use. As a developer, nothing is
more frustrating than struggling with your development
environment instead of doing actual development! I find
this chapter VERY valuable.
should speak well to beginners that want to make games
covers learning JQuery, JQuery with AJAX, and JSON. This
is valuable and I think it's part of the thoroughness of
the book. I also appreciate how he discusses client side
Chapter 4, "How Games Work", may be the most overlooked
chapter by wanna-be game developers who mistakenly think
"I know all about games". I cannot express enough how
important I think writing a game design document can be,
and thankfully he covers it. In addtion, he covers
Resources API and Networking APIs, which is also very
It is this chapter where goes through life cycle of
developing a Pong game, and then Tic-Tac-Toe, classic
examples, but they work well.
Chapter 5, "Creating Games With The Canvas Tag", is
really the heart of the book, which is appropriate
because I believe the Canvas object is the heart and soul
of HTML5 games. He covers all the basic canvas options
you will need, and even 'Creates a Parallax Effect'
Sound is covered this same chapter. Normally most books
dedicate an entire chapter to sound, but it is still
covered well. MIDI Files are utilized and multiple sounds
are covered as well.
I should also state that practically every chapter has
examples and code samples. These can also be downloaded
Chapter 6, "Creating Games with SVG (Scalable Vector
Graphics) and RaphealJS". In this chapter a card game is
developed for examples and it is quite interesting.
Those interested in this type of development should be
find this chapter a welcome addition.
Chapter 7, "Creating Games with WebGL and Three.js" is
beneficial for those that want to use 3D objects and
extended graphic libraries. Its a good read about
rendering, texturing, particle systems, and real-world
Chapter 8, "Creating Games Without JavasScript" is
exactly what it says. While it's something I wasn't
considering, I find I might want to explore. It utilizes
GWT Widgets (Google Web Toolkit).
It also explores CoffeeScript a bit, then briefly
mentions Cappuccino and Pyjamas
Chapter 9, "Building a Multiplayer Game Server", is a
great read. It covers this indepth and is a lengthy
chapter, as it should be. It goes as far as covering the
'Game Lobby' and covering the use of Web Sockets.
Chapter 10, "Developing Mobile Games", is one of the
longest chapters. It is a topic that could be it's own
book itself, but it's covered quite well here. It's a good read if you are new and interested in developing mobile games, this is the one chapter you should check out.
Chapter 11, "Publishing Your Games", is the final chapter of the book and fittingly so. It talks about how to setup your game so that it runs offline for performance, hosting your own server, publishing applications on the Chrome Web Store. This isn't a chapter that is quickly written, but covers many of the areas of publishing. It's really worth your time to give this chapter much attention once you get to the point of publishing.
This book tells you ABOUT its topic but doesn't teach you how to do it. If you're happy just downloading the accompanying files and reading them along with the book as a learning technique then you'll like this book. If you want more hands-on how and why this is not that book.
In addition, the book isn't set up particularly well as a learning reference. For example it's very acronym-heavy but if you don't remember what a particular acronym stands for it's usually not referenced properly in the index so you're left guessing.
The book latched onto a specific library which, I agree, does date it slightly. But the library components use are things that I certainly would not want to build myself although there is great value in examining the guts of any code-base. I felt that the author did a good job explaining that libraries are not always the answer but in the few cases of Vertex and Frame buffers, its probably best to grab something pre-built and learn the basics.
I certainly got what I was looking for out of the book and if was presented in a consumable format (short book).
So would I recommend this book ? If you are an advanced JS/HTML5 developer looking to push your knowledge further : maybe not. But if you don't have a clue about how to start with HTML5, this book will come very handy in giving you the right kickstart to get you up and running in no times.
1) It's too long for me to read while running 3 businesses
2) It's too concise to be of real use (i.e. - ill just learn via google or stackoverflow)
Learn HTML5 Game programming was a happy compromise where it is a quick read at ~200 pages yet chock full of relavent information. One note - don't be mislead by the title, HTML5 game programming covers a variety of additional topics including jquery, node.js, Phonegap, and all the "other" little bits that are needed to make HTML5 a truly feasible tool for flash replacement. Best of all - you learn via examples (i.e. Pong).
For someone who is too busy to read volumes on what is capable w HTML5, yet likes to stay relavent and on the cutting edge, this book it a must read...