Start reading Killer Game Programming in Java on your Kindle in under a minute. Don't have a Kindle? Get your Kindle here or start reading now with a free Kindle Reading App.

Deliver to your Kindle or other device


Try it free

Sample the beginning of this book for free

Deliver to your Kindle or other device

Killer Game Programming in Java

Killer Game Programming in Java [Kindle Edition]

Andrew Davison
4.8 out of 5 stars  See all reviews (4 customer reviews)

Print List Price: £38.50
Kindle Price: £17.15 includes VAT* & free wireless delivery via Amazon Whispernet
You Save: £21.35 (55%)
* Unlike print books, digital books are subject to VAT.

Free Kindle Reading App Anybody can read Kindle books—even without a Kindle device—with the FREE Kindle app for smartphones, tablets and computers.

To get the free app, enter your e-mail address or mobile phone number.


Amazon Price New from Used from
Kindle Edition £17.15  
Paperback £25.02  
Kindle Daily Deal
Kindle Daily Deal: Up to 70% off
Each day we unveil a new book deal at a specially discounted price--for that day only. Learn more about the Kindle Daily Deal or sign up for the Kindle Daily Deal Newsletter to receive free e-mail notifications about each day's deal.

Product Description


"Packed with Java content, with hundreds of links to even more information. The last word in Java game programming." - Paul Hudson, Linux Format, October (Top Stuff Award)

Product Description

Although the number of commercial Java games is still small compared to those written in C or C++, the market is expanding rapidly. Recent updates to Java make it faster and easier to create powerful gaming applications-particularly Java 3D-is fueling an explosive growth in Java games. Java games like Puzzle Pirates, Chrome, Star Wars Galaxies, Runescape, Alien Flux, Kingdom of Wars, Law and Order II, Roboforge, Tom Clancy's Politika, and scores of others have earned awards and become bestsellers.Java developers new to graphics and game programming, as well as game developers new to Java 3D, will find Killer Game Programming in Java invaluable. This new book is a practical introduction to the latest Java graphics and game programming technologies and techniques. It is the first book to thoroughly cover Java's 3D capabilities for all types of graphics and game development projects.Killer Game Programming in Java is a comprehensive guide to everything you need to know to program cool, testosterone-drenched Java games. It will give you reusable techniques to create everything from fast, full-screen action games to multiplayer 3D games. In addition to the most thorough coverage of Java 3D available, Killer Game Programming in Java also clearly details the older, better-known 2D APIs, 3D sprites, animated 3D sprites, first-person shooter programming, sound, fractals, and networked games. Killer Game Programming in Java is a must-have for anyone who wants to create adrenaline-fueled games in Java.

Product details

  • Format: Kindle Edition
  • File Size: 7345 KB
  • Print Length: 998 pages
  • Page Numbers Source ISBN: 0596007302
  • Simultaneous Device Usage: Unlimited
  • Publisher: O'Reilly Media; 1 edition (9 Feb 2009)
  • Sold by: Amazon Media EU S.à r.l.
  • Language: English
  • ASIN: B0028N4WDS
  • Text-to-Speech: Enabled
  • X-Ray:
  • Word Wise: Not Enabled
  • Average Customer Review: 4.8 out of 5 stars  See all reviews (4 customer reviews)
  • Amazon Bestsellers Rank: #321,833 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?

More About the Author

Discover books, learn about writers, and more.

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

3 star
2 star
1 star
4.8 out of 5 stars
4.8 out of 5 stars
Most Helpful Customer Reviews
19 of 20 people found the following review helpful
5.0 out of 5 stars Just what I wanted. 27 July 2007
By Dan
Format:Paperback|Verified Purchase
I have 1 university years worth of C++ and Java knowledge, and an interest in games. Deciding to look into games creation as a hobby I was disappointed in how messy C++ (or C with classes) games programming books were. I'd bought about 5 and read through 3. Then I purchased killer game programming in Java. It is well written, focuses on why doing something one way is a good idea compared to another, and the topics fit in so well if you have a sound (but not necessarily expert) grasp of the Java language and programming concepts. It's going to take a lot of time and effort before I write a game I am truly happy with, but this book is certainly going to help along the way.
Comment | 
Was this review helpful to you?
2 of 2 people found the following review helpful
5.0 out of 5 stars Broad overview, lots of neat tricks 28 Nov 2013
Format:Paperback|Verified Purchase
This is a great volume for anyone looking at game programming - not just java fans. The examples are straightforward enough that whatever language you plan to use for your game, you will easily be able to adapt the included code to your language of choice. The book gives a basic intro to various different approaches to writing games, lots of hints and tips that will save hours of annoyance and forehead-slapping 'If only I'd known' moments. Wicked book, essential for any would-be games programmer's arsenal.
Comment | 
Was this review helpful to you?
1 of 1 people found the following review helpful
5.0 out of 5 stars Amazing, but chapter 1 is VERY boring 22 July 2013
This book is perfect if you want to go a step further than making hello worlds in tutorials designed to take you from the beginning. You need to have GOOD java knowledge to know what any of it means though.
Chapter 1 really droans on for far longer than it should, spitting out jargon that isn't really needed, I myself used to make really simple animation loops that gave back fps and ups and I could control them both, but this just confuses me. That leads me to another point, its best if you start this book with good java knowledge and little or no game programming experience, if you already know some game programming techniques from somewhere else it is likely to confuse or annoy you, that said if you just persevere and diligently write what you see you'll get through it fine.
Another thing is that he uses the Java3D library through most of the book, it took me a little while to install, but I found this useful link: [...] that shows you how to install. Java3D is a little outdated, but at the time of writing (2005?) it was probably a better option.

Overall: the beginning is very boring and a little difficult, but the actual game concepts later are very cool!
Comment | 
Was this review helpful to you?
9 of 12 people found the following review helpful
4.0 out of 5 stars Heavy going 19 Oct 2009
Format:Paperback|Verified Purchase
If you work your way through the chapters of example code, you will finish up with a framework upon which various gaming scenarios can be based, but it takes a good deal of effort.
Comment | 
Was this review helpful to you?
Most Helpful Customer Reviews on (beta) 4.4 out of 5 stars  39 reviews
65 of 67 people found the following review helpful
5.0 out of 5 stars Far better than any other book on this topic 27 May 2006
By Blaine A. Simpson - Published on
Format:Paperback|Verified Purchase
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.
82 of 87 people found the following review helpful
5.0 out of 5 stars Great for Java game programming and much more 4 Dec 2005
By calvinnme - Published on
Format:Paperback|Verified Purchase
This is one of the most interesting books I have read on the subject of game programming in Java. In addition, it is a great tutorial on how to use Java to accomplish a number of multimedia programming objectives independent of game programming. Since there is no table of contents shown, I will summarize the book's contents in the context of the table of contents:
1. Why Java for Games Programming? - Many discussions are revisited about why Java is not a bad choice for game programming- speed, memory leaks, etc.
2. An Animation Framework - The animation algorithm developed through most of this chapter is embedded in a JPanel subclass (called GamePanel), which acts as a canvas for drawing 2D graphics. The animation is managed by a thread which ensures that it progresses at a consistent number of frames per second.
3. Worms in Windows and Applets - The threaded animation loop of chapter 1 is tested inside a windowed application and an applet. The programs are all variants of the same WormChase game.
4. Full-Screen Worms - Three approaches to full-screen games are investigated.
5. An Introduction to Java Imaging - The aging AWT imaging model is discussed, followed by the BufferedImage and VolatileImage classes, ImageIO, and the wide range of BufferedImageOp image operations offered by Java 2D.
6. Image Loading, Visual Effects, and Animation - This chapter examines how to efficiently load and display images, apply visual effects such as blurring, fading, and rotation, and animate them.
7. Introducing Java Sound - The Sound API is compared to the Java Media Framework (JMF), and the recently introduced JOAL, a Java binding to OpenGL's music API.
8. Loading and Playing Sounds - Discusses a single application, LoadersTests, which demonstrates "ClipsLoader" & "MidisLoader" classes for the control of clips and sequences.
9. Audio Effects - Different ways of applying effects to audio, which is key to the advantage of the Sound API- access to audio files to the bit level.
10. Audio Synthesis - How to create tone sequences for sampled audio and how to create MIDI sequences at runtime.
11. Sprites - A game's active entities are often encoded as sprites. A sprite is a moving graphical object.The Sprite class developed in this chapter builds on the animation framework and image and audio loaders developed earlier in the book.
12. A Side-Scroller - This chapter describes JumpingJack, a side scroller much like Super Mario, but considerably simpler, that illustrates tile maps, layers, parallax scrolling, and a jumping hero called 'Jack' who has to dodge exploding fireballs.
13. An Isometric Tile Game - Isometric tiles are the basis of many real-time strategy games, war games, and simulations, and Java-based "Alien Tiles" is demo'd here.
14. Introducing Java 3D - A brief introduction to the Java 3D API.
15. A 3D Checkerboard: Checkers3D - This chapter describes a Java 3D example called Checker3D that demos many Java 3D programming techniques.
16. Loading and Manipulating External Models - Many times it makes sense to create an object using 3D modeling software, and then load it into your Java 3D application at run time.
17. Using a Lathe to Make Shapes - One of the most ingenious chapters of the books shows how to create complex 3D shapes using a Java-based 3D lathe.
18. 3D Sprites - A Sprite3D class is developed.
19. Animated 3D Sprites - Poses and animation are included for the Sprite3D class of the previous chapter.
20. An Articulated, Moveable Figure - The implementation of an articulated figure is performed, composed of rotatable limbs, which can be moved around a checkboard floor in a similar manner to the 3D sprites in Chapters 18 and 19.
21. Particle Systems - Three particle systems are developed in this chapter: one where the particles are points, another using lines, and a third using quadrilaterals (quads).
22. Flocking Boids - Flocking is a computer model for the coordinated motion of groups (or flocks) of entities called boids, performed in 3D.
23. Shooting a Gun - The application in this chapter, Shooter3D, contains a gun which fires a laser beam at the point on the checkered floor clicked on by the user. The flight of the laser beam is accompanied by a suitable sound, and followed by an explosion.
24. A First-Person Shooter - Builds on the previous chapter by putting the gun in the player's hand.
25. A 3D Maze - Emphasis is on navigation through a complex scene (a 3D maze). The two main topics will be how to generate a realistic looking scene as in "Doom", and how to use multiple views to aid navigation.
26. Fractal Land - The FractalLand3D application creates a landscape using a plasma fractal to generate height values for the landscape's component quads.
27. Terrain Generation with Terragen - Landscape is designed with Terragen, then exported as a OBJ file (representing the landscape as a mesh), and as a BMP (showing the surface viewed from above). The BMP is subsequently edited and converted into a JPG.
28. Trees That Grow - Shows foliage that actually grows over time.
29. Networking Basics - runs through networking fundamentals and explains basic network programming with sockets, URLs, and servlets.
30. Network Chat - about online chat, the "hello world" of network programming. There are three chat variants: one using a client/server model, one employing multicasting, and chatting with servlets.
31. A Networked Two-Person Game - Pulls everything together to build a simple networked 2-player game.
32. A Networked Virtual Environment - NetTour3D is a very simple networked virtual environment which allows sprites representing users (clients) on different machines to move about in a shared world. The world is a checkboard, with simple scenery and obstacles.
A. Installation Using install4j
B. Installation Using Java Web Start
If you go to the author's website, he has additional chapters that are not in the book on J2ME, bluetooth, and mobile 3D gaming. Plus the downloadable code for the book is also there. Since Amazon usually throws out reviews with web addresses, just type "Killer Game Programming in Java" into Google and the first address you see should be the author's website.
In summary, I would highly recommend this book to any experienced Java programmer who is interested in programming games, as well as those interested in advanced Java Sound or Java 3D techniques which might be of use to any Java multimedia programmer.
38 of 39 people found the following review helpful
4.0 out of 5 stars Fun way to learn Java 3D 7 Jun 2005
By Eric Wuehler - Published on
I thought the idea of "killer" game programming in java was a bit far fetched. (Note: I have very little experience with Java3D - as in, I've gone through the demos and not much else). After reading through this book, I still think "killer" game programming is a generous description. However, I did discover a pleasant side effect; it was a fun way to explore the Java3D APIs.

This book does not spend any time on introductory java nor does it build a "killer" game from start to finish as it moves through the chapters. There are snippets of source code throughout the book, but I'd suggest downloading the source. The source code was very helpful, easy to compile and run. I had no problems running the code on a Mac and Java 1.4.2.

The text is very academic and thorough in its descriptions. While the title might suggest "game programming" as the primary focus of the book, I think this is almost a secondary issue. The real thrust (or at least what I got out of it) is a fun way to learn the techniques to 2D and 3D graphics programming, dealing with lighting, perspective, and movement using the Java Sound, Java 2D and Java 3D APIs.
18 of 19 people found the following review helpful
5.0 out of 5 stars one of the best 2 Aug 2005
By David Wallace Croft - Published on
I have all of the Java game programming books published since 1996 and this book ranks in the top three. There are no gaps in the coverage of the subject and the author has clearly done his research. While I might do some things differently here and there, overall this book is clearly one of the best. I highly recommend. -- David Wallace Croft, Founder of and Author of "Advanced Java Game Programming"
29 of 33 people found the following review helpful
5.0 out of 5 stars Bad name, great book on the fundamentals 23 Jun 2005
By Jack D. Herrington - Published on
I wish I could have waved O'Reilly off this name. It reminds me of the bad old days of the "Secrets of the Game Programming Mega-Gurus". Happily this is where the similarity ends. This book is far better than any of the old books that essentially covered graphics primitives and left it at that. This book goes in depth on 2D and 3D graphics and covers specifically how these interfaces are used in a game setting with real examples. Simple example games are provided and their implementation is well documented. Even network programming was discussed.

I'm pleased with this book, and the other recent gaming titles I have seen. Finally tech books that treat game programming with respect.
Were these reviews helpful?   Let us know
Search Customer Reviews
Only search this product's reviews

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
First post:
Prompts for sign-in

Search Customer Discussions
Search all Amazon discussions

Look for similar items by category