Practical Java Game Programming (Game Development Series) (英語) ペーパーバック – 2004/6/30
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
Java is gaining more and more acceptance in the game development community, and with good commercial-quality Java games on the market, it will become a definitive choice. Practical Java Game Programming identifies the technological path developers need to take to make this happen. It explores and illustrates cutting-edge Java game programming concepts and techniques through specific explanations from existing Java game projects, with fully executable example code. Intended for both Java programmers new to game development, and for game programmers interested in Java, the book offers usage patterns that leverage Java's strengths and points out weaknesses to avoid. It teaches Java programmers how to deliver outstanding games and details the specific issues in Java to make game development straightforward and efficient. Java has always provided a powerful platform on which to develop interactive content, and with the addition of the Java Technology Groupís gaming APIs, Java becomes a third-party platform choice and delivery model for game developers. Each chapter includes working code examples that can stand alone for easy implementation into one's own projects, or be used toward the creation of a fully functional demo game. This allows beginning programmers to follow the topics step-by-step, and more experienced programmers to use specific areas of interest. Although this book is centered on Java and the platform technologies, its message is for developers to maintain a wide view regarding new technologies, as well as to keep creative ingenuity intact while implementing games on the Java platform.
Dustin Clingman is a professor of Game Design and Development at Full Sail RealWorld Education and president of the game studio Zeitgeist Games, Inc. He frequently speaks at IGDA events and conferences around the country, as well as at GDC. Shawn Kendall is the professor for Real Time 3D Graphics at Full Sail and has developed cutting edge Java and Java 3D based game technology demos for both Full Sail and Sun Microsytems. He is the found of Immediate Mode Interactive, LLC, a Java game technology company. Syrus Mesdaghi is the professor of the AI course at Full Sail, has developed cutting-edge game technology for both Full Sail and Sun Microsystems and is active in Java gaming and AI communities.
The focus of this book is off-point from the start, in my opinion. The chapters toward the end on 3D graphics provide insufficient information to build a 3D game, and yet the material up to that point is insufficient to build a 2D game. What you end up with in the end is a lot of knowledge about Java, but not a single practical program, let alone game.
This problem is exacerbated by the fact that the CD includes .java and .class files, but no explanation on what to do with them (the back cover does say this is a Beginning-Intermediate book, not Advanced).
The Java Developer's Kit comes with much better demos than you will find in this book WITH convenient .html files with code to run the applets, which is something these authors should have included.
What this IS is a book that describes the +/- of the java language and the JVM and talks about PERFORMANCE issues extensively. The author goes out of his way to talk about the issues surrounding the use of Hotspot VM/JIT and benchmarks with math/IO, etc.
The last 1/2 of the book (maybe less) deals with some high-level understanding of rendering and collision detection.
Topics include bindings to OpenGL (jogl), JNI (it's cost vs. benefits in it's use), performance of java.math and where it can be optimized, some simple treatment of sockets vs. datagram/multicast sockets, audio integration, proper use and performance with direct bytebuffers vs. java arrays (java.io/java.nio), also a little on GC collection algorithms. Also a treatment of java's +/- as a scripting language, as well as a good look at rendering and collisions.
Overall a very interesting techical look at the VM and performance challenges that java as a GAME language faces.
The author makes it clear that good java games can be written but good PERFORMANCE games takes an understanding of the JVM and proper code architecture that takes into account java's strengths (as oppsed to it's weaknesses).
I would recommend this a a great starting point for someone interested in making good java games or just learning about java performance issues. If you want a 'cookbook' you'll need to look elsewhere.
Pick it up at a bargain price (under $5) and I do recommend it as a good book on JOAL and several other topics of value for Java programming (not just games).
My only criticism of the book is that it has alot of assumptions when you go to the 3d components. The explanation is very solid, but my personal background in 3D Math was very limited when I started with the book. There is coverage on 3d foundations, but it could take a whole book just to adequetly cover that topic. I continue to practice that as I go.
Overall, a good selection. I would be interested in a sequel to cover more advanced topics.