If you already have Java programming experience and are looking to program games, this book is for you. David Brackeen, along with co-authors Bret Barker and Lawrence Vanhelsuwe, show you how to make fast, full-screen action games such as side scrollers and 3D shooters. Key features covered in this book include Java 2 game programming techniques, including latest 2D graphics and sound technologies, 3D graphics and scene management, path-finding and artificial intelligence, collision detection, game scripting using BeanShell, and multi-player game engine creation.
David Brackeen grew up in Texas and has a B.S. in Computer Science from the University of North Texas. He has created many games, level editors, and multimedia products in Java, including Scared (a 3D shooter game) and Race3d (a 3D racing engine used in several games). He will neither confirm nor deny allegations that he ever drank rainwater from a shoe. He currently resides in Los Angeles, but you can find him at www.brackeen.com.
Right off the bat in chapter 1 David starts with a chapter on Threads! Then he moves on to several chapters of 2D graphics and animation and builds a complete 2D scroller in chapter 5! You're probably liking what you're hearing so far if you've read any of the other java game programming books. The next several chapters spend some time on understanding and then programming 3D graphics (great chapters, BTW), then moves on to collision detection, AI and pathfinding, game scripting (using BeanShell - excellent choice), optimization, and more. Somewhere in there is a chapter on multiplayer networking.
All chapters build on the previous ones. The examples all seem worthwhile and demonstrate the concepts and techniques. This is real meat & potatoes game programming, and as the author points out, just happens to be implemented in Java. It looks to me like this guy really knows Java well (I'm a professional Java/J2EE programmer) and points out everything you need to know about using it to implement the game programming concepts.
A few minor nits and notes. The focus of the book is on full-screen applications, not applets or windowed games. You can apply what you've learned to those two, but they're not covered (which is a good thing, but be forewarned). The book is printed with a relatively large font, IMO, especially the code listings, so it's a bit heftier than it should be, but I don't feel like they're over-charging, so I'll live. Also, almost no time was spent talking about writing tools like map editors, assest editors, etc. I feel like those items are important enough to spend a bit more time on, but I can understand why they are only mentioned in brief. The only items other items I would have liked to see some brief coverage of were 2D isometric tile-based maps and 3D terrain.
This is a great intermediate level book on writing games in Java. I'd love to see the author or other writers build on this book to cover more advanced topics like those mentioned above, but you can use the information in this book and other great game programming references (like the Game Programming Gems series, AI Game Programming Wisdom, Strategy Game Programming in DirectX 9.0 (EXCELLENT BOOK), Game Coding Complete, 3D Game Engine Design, Physics for Game Developers, and others) to get where you need to go.
For anyone disappointed with other Java game programming books, this is a must-have. Highly recommended.