Java Gaming Resources

[h1]Recommended Books[/h1]

[h1]Game Tutorials[/h1]

[h2]Full Game Source Code[/h2]

  • The entire source code to Revenge of the Titans! (Please respect the fact that it is copyright and use for educational purposes only)

[h1]Game Libraries[/h1]

[h2]2D Engines and Libraries[/h2]

  • LibGDX (2D and 3D OpenGL library, both desktop and Android support, and more. Actively maintained)
  • Slick2D (Hardware Accelerated 2D Games Library)
  • PulpCore (2D Games Engine, especially good for Applets. No longer actively maintained.)

[h2]3D Engines and Libraries[/h2]

  • JMonkeyEngine (Java based 3D engine)
  • Ardor3D (Java based 3D engine)
  • jPCT (Java based 3D engine)
  • LibGDX (2D and 3D OpenGL library, both desktop and Android support, and more)
  • Clyde (For creating action-oriented networked 3D games in Java.)
  • Xith3D (Java based 3D engine)
  • Ogre4J (Java binding to the popular C++ engine Ogre3D)
  • Java 3D (scene graph based 3D application programming interface)
  • 3DzzD (Java based 3D engine for webpages, no longer maintained)

[h2]Graphics and Sound Bindings[/h2]

  • LWJGL (OpenGL, OpenAL, OpenCL, JInput)
  • JogAmp (OpenGL, OpenAL, OpenCL, OpenMAX, JInput For JogAmp)

[h2]Sound Libraries[/h2]

  • Paulscode 3D Sound Engine (abstraction layer over JavaSound, OpenAL, etc)
  • TinySound (very simple wrapper library for JavaSound)
  • AudioCue (a more powerful ‘Clip’, enabling concurrent playback, real-time volume, panning and frequency controls)
  • Java Sound Libraries (Includes MP3 decoding, Zorbis and other Javazoom libraries set up for Maven)

[h2]Physics Libraries[/h2]

  • JBox2D (2D physics engine, straight port of the C++ Box2D engine)
  • JBullet (3D physics engine, No longer maintained)
  • dyn4j (A 100% Java 2D collision detection and physics engine)

[h2]Network Libraries[/h2]

  • KryoNet (clean and simple API for efficient TCP and UDP client/server network communication using NIO)
  • RedDwarf (RedDwarf is a server side technology written in Java that radically simplifies the development of online games and lowers the barrier to entry into the MMOG market)
  • Narya (The Narya library provides various facilities for making networked multiplayer games.)

[h2]GUI Libraries[/h2]

  • TWL (TWL is a GUI library built on top of OpenGL and provides all the standard widgets like labels, edit fields, tables, popups, tooltips, frames and a lot more.)
  • Nifty (Nifty GUI is a Library for games or similar applications. The configuration of the GUI are stored in xml files with little supporting Java code.)
  • Feng GUI (FengGUI is built on OpenGL and provides all typical GUI components.)
  • PureSwing (Reimplementation of Swing)

[h1]Java Game Portals[/h1]

  • GameJolt - Upload Java Games and make money
  • Games4J - Upload Java Games and make money
  • FunOrb - Java Games Portal
  • Java4K - The site for the annual Java4k contest, upload & play Java4K games
  • Java Game Tome - Showcase your java games online
  • Pogo - Online Games Portal
  • Chrome Web Store - Google’s App Store allows Java Games (You can even sell them)

[h1]Featured Misc.[/h1]

Please respect the nature of this resources page:
[x] do not add your, or anybody else’s library if it’s not proven to be production ready.
[x] every library must be thouroughly tested/used by a lot of developers.
[x] when in doubt, plug your library elsewhere on the forum, and ask whether it belongs here.

I’ve only quickly glanced through the source, but dyn4j looks promising and is actively developed.

Added a link to the download of the source code to Revenge of the Titans in the tutorials section.

Cas :slight_smile:

I updated some outdated links for cokeandcode which is now defunct, and removed the old project for Physics that no longer exists on that site, I couldn’t find any links to an active download of it.

I updated some outdated links for cokeandcode which is now defunct, and removed the old project for Physics that no longer exists on that site, I couldn’t find any links to an active download of it.