Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

I'm thinking of picking up the book Killer Game Programming by Andrew Davidson, but its pretty old now. I know Java, and I've been messing with jMonkeyEngine for a few days now, but I'm curious to see if people would think I would benefit from starting from the 3D chapters of this book and working my way through them, having ?

How is the source code? Has Java changed to the point where this book is now obsolete? Will I have my hand held through most of it, or is it just concepts?

The chapters at the end of the book that seem to explain how to take all the 3D drawing in a scene graph you learned and then applying it to the creation of a client/server and having multiple avatars move around in this 3D world seems amazing to me, but I fear it may just be book marketing and that there isnt full source code in the book.

If you definitely think I shouldn't get this book, can you post references/tutorials/books to other sources you recommend for 3D game programming? Maybe theres a website that runs through full tutorials on game building with LWJGL or something.

Thanks so much!

share|improve this question
3  
It certainly isn't obsolete but Java3D is a PITA and for games it's a very poor choice. Imo the book is really nice to learn the basic concepts of game programming and that stuff but if you already know all that and your focus is 3D you'll probably be disappointed. –  Raoul Nov 10 '10 at 9:48
1  
@Raoul: thank you for introducing me to a new acronym. –  Jaime Soto Nov 10 '10 at 14:20
add comment

5 Answers

A better question might be: why are there no new books on Java game programming? Java got pushed out of the in-browser experience by Flash and was never able to steal away C++ game developers in a big way. Nevertheless, Minecraft is completely fun. Both those books convey design principles that are applicable to any language or environment and the hand holding is not overbearing. Reading them will not instill any bad habits in you, so I say go for it.

share|improve this answer
add comment

You can actually find a number of the chapters for free at the book's website.

Java 3D was a neat API, but has since been "put on hold" in January 2008. It's not looking good, 3 years later and with no apparent progress towards starting up again. I would probably recommend looking into JMonkeyEngine or LWJGL instead (the former being closer to Java 3D, with a scene graph, while LWJGL is OpenGL in Java so it'd be more low-level).

Also it's extremely unfortunate that Java 3D is/was hosted at java.sun.com because the Oracle acquisition messed up some of the webpages. For example, many of the links at the Wikipedia article for Java 3D are now broken thanks to Oracle. So hopefully you will be able to get to all the downloads and documentation you need; but you might want to check now, before you buy the book!

Personally, I found Java 3D to be rather neat. I didn't do much with it, but I did buy this book and another about Java 3D in an attempt to learn it. It seems to be a well-made API with similar goals to Java (cross-platform - working on all machine, screen, etc. configurations).

One last note: there was one Java 3D game I knew of, called Magicosm (later renamed to Cosm). I was excited about it! But, well, you can read the story on that page. Still, archive.org has a copy of the old website which explained all the game ideas and progress of the game. So it appears that it is definitely possible to make a game in Java 3D.

share|improve this answer
    
+1 for jMonkeyEngine and LWJGL - far more suitable for games than Java 3D ever was..... –  mikera Jul 19 '12 at 5:42
add comment

Has Java changed to the point where this book is now obsolete?

Never, apart from few changes in the JDK, it is nowhere near the word "obsolete".

IMHO, its always better if you know about the old technology and how it evolved well in hand before you start learning the new technology.

share|improve this answer
3  
"IMHO, its always better if you know about the old technology and how it evolved well in hand before you start learning the new technology." Well, I'm certainly glad I didn't start learning .NET 1.1 when 2.0 was out. Anyway, with java the biggest recent change was the introduction of generics in 1.5. So if the book is older than that you won't be learning any good templates. –  Nailer Nov 10 '10 at 9:58
    
What I actually meant by "learning" was not that it would make a difference if i learnt .net 1.1 before .net 2.0. What i meant was if you learnt the technology used before as compared to now. Like if i gave an example , if i had been using structure pointers to refer to a game object in an old technology, now i am using classes for referring to the same game object. So i meant this, knowing (not learning) the old things does provide you with an edge over knowing only the new things –  Vishnu Nov 11 '10 at 4:04
add comment

It might be a good foundation and it discusses concepts that are not often discussed in context of Java. If you follow the author's work you'll be impressed with what he has gone on to do with Java and Computer Vision (CV).

You can get some older and unpublished chapters to Killer games here. Also the code from the book is there too.

He has also gone on to do some interactive gaming with Kinect and has written a lot about it.

share|improve this answer
add comment

You may want to learn javascript and webgl instead. Combined with HTML5 that will allow you to develop platform-independent games for mobile and computer.

It doesn't really answer your question, but it might be better for you.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.