Customer Rating: Average rating of 4/5Average rating of 4/5Average rating of 4/5Average rating of 4/5Average rating of 4/5
Summary: Good stuff
Comment: A good descriptive book about sound and graphics programming techniques that go into developing games. Significant number of references on the web mentioned for further research and to complement it. As a seasoned Java programmer other than games, I like that it's written quite clearly on the challenging topics of some chapters.

Customer Rating: Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5
Summary: It's just amazing.
Comment: I am a java programmer who works by making web applications in Java using frameworks like Struts and databases like Oracle, and I am also student of computer science. I always researched and studied by myself how to program games, and even made my own Tetris for pc and cellphone (in Java). But this book puts together in one work just everything that I always wanted and needed to know about games programming: 2D graphics, 3D graphics, sound, network, 3D models and on, in a very didactic way, and it is still growing, since there is always new material available at it's site. I highly reccomend this book for any Java programmer who wants to make professional, complete and market competitive games in this wonderful language.

Customer Rating: Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5
Summary: Great 1st book!!
Comment: If you know some Java and you would like to start making games, you have to pick up this book. By the end of the 3rd chapter you'll be able to make all kinds of simple games and learn tons of fundamentals. Besides it's only $35. Also describes how to build your game into an installer that allows you to easily distribute your final products. Odoyle Rules!

Customer Rating: Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5
Summary: Far better than any other book on this topic
Comment: This book is miles ahead of other Java gaming books... For one thing, this is an excellent book in its own right. For another, the other existing books on the topic suck.

Anybody who spends a lot of time writing games in Java ends up running into certain challenges. For each of these real issues, it takes a lot time to identify the issue then many hours to come up a satisfactory solution or work-around. This book saves you from 99% of that work. The author has documented nearly every complication that you will run into. The other Java gaming books explain how to apply common sense and traditional gaming strategies to the Java APIs (usually following Sun's tutorials exactly), giving step-by-step instructions on how to do so. Besides the point that this adds no value for somebody capable of following Sun's tutorials and APIs, they offer no help where you need it most... where the straight-forward approach is unsatisfactory or just doesn't work for some reason.

Another thing that has saved me a ton of frustration and time is advice from the author. For my specific game project I've run into several questions which I've been unable to answer by web searches, posting to forums, etc. I've emailed Davison (the author), and he has answered each of my questions concisely and to the point every time. (I don't want you to spam him, so please don't send questions until after you have looked for the answer in his book!).

To address concerns that other reviewers have posted:

This book is not just for "advanced" Java developers. As Davison has emailed me, the intended audience is, "someone who has just got past their first Java course". He purposefully avoids avoids all but elemental Java features (e.g., no ternaries, abstract classes, logging infrastructures, IOC).

WRT examples, you are not buying a gaming library or framework. The goal is not to give you production classes that you can use as-is in production quality products. Other reviewers are demanding production-ready examples. It is impossible to make production-ready examples that can be easily understood by first-year Java developers. If you want production-ready classes, don't look for them in a HOW-TO book, find them elsewhere or read this book and then write them yourself.

Customer Rating: Average rating of 2/5Average rating of 2/5Average rating of 2/5Average rating of 2/5Average rating of 2/5
Summary: Somewhat Disappointed - But hopeful for a second edition
Comment: This is the first time I've been disappointed by a book published by O'Reilly. There are, in my opinion, quite a few things wrong with this book. I'll mention a few.

* Disappointing sample programs. The sample programs feel, unfortunately, very low quality - enough, in my opinion, to drive some readers away from Java as a game development language altogether. Providing higher quality sample programs would have been nice. It's not necessary to provide the polished details in the book itself, but having highly polished samples available as a download would have gone a long ways towards showing the reader how great Java can be as a development language. (A picture is worth a thousand words.) I would have preferred one extremely polished, high quality 2-D sample and one extremely polished, high quality 3-D example instead of lots of small, unpolished, low quality examples.

* Bugs in sample programs. I've encountered quite a few little bugs in many of the sample programs. For example, it's easy to end up "under the world" in FractalLand3D, and the lighting is sometimes off (way off). Also, on my updated, high performance machine, I noticed recurring lag in FractalLand3D, preventing it from running smoothly.

* The web site to which the author directs you for downloading the sample code is often very slow, perhaps because it's based in Thailand and I'm in the United States. Since the book doesn't come with a CD-ROM (a decision I support, given the ubiquity of the Internet these days), I think the author could have invested in at least one fast U.S.-based server since a large portion of book sales will undoubtedly be to U.S.-based customers.

* Missing downloads (bad URLs). In the ever-changing realm of the world wide web, it's understandable when URLs in older books (and even newer books) stop working. However, it's barely 2006, and this book was published in 2005. There's no reason the author should direct you to a download such as [...] and have it fail to actually be there.

* Too many pages spent on certain topics, such as: 1. Timing - which includes unnecessary details like timing on Windows 98-based computers (an operating system that's now 8 years old!) and performance on Pentium II-based machines (a CPU that's now 3 generations out of date!); 2. Justifying Java as a game development language; 3. Explaining the design and code in the samples in painfully small steps - I feel the author would have better served the readers by "getting to the point" more quickly.

I don't want to sound too harsh. Obviously, a lot of work and knowledge went into this book. You could do much worse than reading this book, which does a reasonable job covering a topic that isn't nearly as saturated as topics such as how to write Java servlets. However, when I pick up an O'Reilly book, I don't expect reasonable: I expect excellent, and I don't feel this book lives up to the O'Reilly name.

Given the other book choices on the topic of Java game programming, this book would make a decent addition to your programming bookshelf. I do, however, think the author should consider a second edition which addresses the problems listed above.