I'm not new in Java, but I know nothing about tools and APIs related to games. So now I have decided to create a few games but I don't know where to start. I could buy a book but I don't think that's the best choice.

So..
What do you guys suggest?
What should I learn first, are there any Complete tutorials? What further reading do you recommend?

2 Answers
2

Killer Game Programming in Java is a nice book that i bought for a college course in java game programming. the website i listed includes full source of some example games. i have learned a lot from this source

To make a game, technically (leaving aside the gameplay) you need to implement support for at least graphics and music, and after that to support some other cool/modern stuff that makes a game fun nowadays (networking, UI-feedback, motion control, and many others).

Now, Java targets different platforms. For example there is J2ME which was for limited devices and was the way mobile games were made several years ago. In J2ME you have a fairly simple API for drawing graphic primitives and images on the screen and some very basic API for playing some MIDI, WAV or MP3 sequences. Very basic API with very limited hardware resources but with some courage you can even do dynamic-lighting :D.

On the PC there are some other APIs for Java. The video cards for PC's are now optimized for 3D operations and not so optimized for 2D operations, therefore you might find it to be faster to use a library for 3D rendering instead of libraries for 2D rendering. One of these libraries I know about is JOGL, a Java wrapper over OpenGL, but is a little bit old at the moment.