HTML5 Games: Creating Fun with HTML5, CSS3, and WebGL (英語) ペーパーバック – 2011/12/27
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
Discover new opportunities for building 2D and 3D games with HTML5
- Aims directly at a new way to develop games for the web through the use of HTML5
- Demonstrates how to make iOS and Android web apps
- Explains how to capture player input; create 3D graphics; and incorporate textures, lighting, and sound
- Guides you through the process of creating a game from scratch using Canvas, HTML5 Audio, WebGL, and WebSockets
By the end of this invaluable book, you will have created a fully functional game that can be played in any compatible browser or on any mobile device that supports HTML5.
Amazon.com で最も参考になったカスタマーレビュー (beta)
where we will build a game engine using webgl technologies. I would have liked perhaps an additional chapter about webgl, but am quite pleased
with the chapter that is present. Also, the other chapters are informative and helpful, e.g. those describing web sockets, local storage, etc. I
downloaded the software from the publisher website and ran many of the samples. In one case, I had to make a change to the code to accept 0 (zero)
from an xmlhttprequest where the code was only accepting a 200 as a valid return code. Otherwise, things that I tried ran unchanged. At one point I
was confused by a reference to "BC" in the Index. A quick email to the author got an almost immediate reply in which he told me that the acronym
referred to Bonus Content, and that the content would be added to the downloads at the website. He emailed me later when the content was available.
While I will probably provide some websites as supplements to be visited by my students, I am completely satisfied with the book and am currently
planning to use it in my course this summer.
The book doesn't spend time discussing game theory and doesn't go into exhaustive detail with APIs for canvas and multimedia, it states the objective in building a puzzle game and then attacks the problem by building-out each of the components and subsystems. Each chapter is very logically-organized and well-written, neither too short nor not overly verbose. It leverages techniques for multiplayer games like Web Sockets and Web Workers and uses slick techniques to take advantage of local storage for a real console feel. The animation and WebGL chapters are very much appreciated, too.
But the book's finest hour is its hearty chapter dealing with the nuances of mobile games for iOS and Android. This chapter is essential reading, featuring material not found in wide distribution with most titles out there at the moment.
This book is so good, I'd recommend owning it AS A BOOK. With maybe an electronic copy as a backup. :)
I recommend typing in all the code yourself, chapter by chapter, with the possible exception of Chapter 11's WebGL - I skipped most of that for the time being; if you're a professional game programmer, you most likely won't be creating your own 3D art. If you're really interested in WebGL (which is still in its infancy and not widely supported), I'd go through the rest of the book first, then tackle that chapter later on.
Don't expect to memorize it all in one go. Use the code as a reference for when you design and develop your own games and make extensive use of JS, CSS and canvas.
There are 3 errors in the code (at least in the print edition) that I've caught and posted about elsewhere, but these errors are fixed in Jacob's code samples. If you're banging your head against the wall and can't figure out what's wrong, compare your version to his.
Overall, you'll definitely want this if you're going to make and publish serious HTML5 games.
When I first heard Jacob Seidelin (the mastermind behind the NihiLogic Web site and the famous "HTML5 Canvas Cheat Sheet") was working on a book that was to cover game development using HTML5, I got excited. The current crop of HTML5 game programming books is, to put it bluntly, quite underwhelming. However, I knew if the book Mr. Seidelin was working on is near the caliber of the content on his Web site -- I'd be in for a real treat.
The book, "HTML5 Games: Creating Fun with HTML5, CSS3, and WebGL," meets my expectations.
In Part 1 of the book, you start out by learning a bit about the history of HTML5, and gaining some ideas about how HTML5 can be used for gaming. In Chapter 2, after a primer on the game you will be building (a puzzle game along the lines of "Jewel Quest"), you get to the nitty-gritty and start the HTML/CSS files (along with a few scripts) necessary for the game -- including coverage of Web Fonts.
Part 1 concludes with a chapter on techniques to help your project translate well on mobile devices. This chapter is a gold-mine of tips and tricks that will get you going if you want your games to work well on Apple mobile devices and Android systems.
Then, in "Part 2", you get into the thick of it. Chapter 4 has you build the game-board module, including move-validation (so that one cannot make illegal moves), finding sets-of-three, and clearing/refilling the game board. Chapter 5 covers Web Workers, and does so well -- Mr. Seidelin does a good job of explaining why workers can be helpful, and in what situations they perform (or don't perform) well.
In Chapter 6, you will be introduced to Canvas -- the scriptable graphics element introduced in HTML5. Everything is covered -- shapes/paths, transformation/scaling/rotation, rendering text and images, and real-time rendering (such as shadows, and my personal favorite -- compositing). Chapter 7 extends the game by showing you how to pre-load game assets (and display a progress bar in the meantime), and adding a "fallback" rendering method using CSS sprites and the DOM to control the game view.
Chapter 8 covers input. In addition to mouse and keyboard input, Jacob will explain to you how touch events work on devices with touch screens, and how to interpret them in the game. Chapter 9 covers animating the game, and includes a handy "fallback" script that imitates the functionality of requestAnimationFrame() for browsers without support for the function built-in.
Part 3 (which I have not delved into -- yet) covers the Audio element in Chapter 10, whereas Chapter 11 will guide you through adding WebGL rendering to the game project.
Part 4 covers more of the advanced functions introduced in HTML5, such as Local Storage and WebSockets. The book winds down in Chapter 14 with a list of resources -- everything from external libraries (Box2D, Impact, and Three are covered), to app deployment/sales (for both desktop and mobile devices), and so on.
In summary, this book is pretty much going to take you from 0 to 60 in about 430 pages. Jacob has a really great writing style, in that he explains things very well without being overly verbose -- he says a lot by saying a little. This makes it much easier to grasp even difficult concepts. His use of modules such as Modernizr and Sizzle is, in my opinion, a good thing (jQuery is more popular, but would add a bit of unnecessary bloat, unfortunately). I'm really impressed with the editing -- I have only come across one instance of mangled code, and it is minor. (I had the error marked and planned to point it out; unfortunately, the marker I used fell out of the book...)
"HTML5 Games: Creating Fun with HTML5, CSS3, and WebGL" by Jacob Seidelin gets five well-deserved stars from me.
- 洋書 > Computers & Technology > Programming > Game Programming
- 洋書 > Computers & Technology > Programming > Languages & Tools
- 洋書 > Computers & Technology > Programming > Software Design, Testing & Engineering > Object-Oriented Design
- 洋書 > Computers & Technology > Web Development & Design > Programming
- 洋書 > Education & Reference