Según su primer requisito, está buscando un marco en lugar de una biblioteca.
jMonkeyEngine es un marco para juegos 3D (es decir, proporciona el bucle principal a medida que lo solicita, similar a XNA), pero no sería una buena opción para 2D.
Sin embargo, un bucle de juego no es algo difícil de escribir , y las bibliotecas Java existentes manejan sus requisitos segundo y tercero, por lo que le sugiero que busque en una biblioteca / motor 3D de gráficos de escenas o cualquier biblioteca 2D, dependiendo de si está haciendo un juego en 2D o 3D.
Aviatrix3D , ardor3d , Java 3D y jMonkeyEngine son mis recomendaciones para los motores 3D del escenario gráfico.
Para las bibliotecas 2D, tiene JGame , o puede elegir usar OpenGL para una velocidad máxima y usar LWJGL o JOGL . También podría ir con la biblioteca Graphics2D incorporada de Java , que sería una opción especialmente buena si planea implementar su juego como un applet.
Para ir a la ruta integrada Graphics2D, mire el código fuente de Metagun (haga clic para reproducir en forma de applet). Es un juego Java 2D pequeño pero muy bien escrito, y creo que es un excelente ejemplo de un juego pequeño; copie su estructura y tendrá su bucle / marco de juego óptimo.
Si desea un marco único que sea compatible con 2D y 3D, lo más cercano que he visto es jPct. Es en 3D, pero dentro de sus foros tienen algunos ajustes para hacer en 2D.
Te recomiendo que vayas con Xith3D o Java Monkey Engine para 3D. Y Slick o GTGE para 2D.
Estoy escribiendo un libro sobre el desarrollo de juegos Java, ya completé los capítulos sobre los conceptos básicos para el desarrollo de juegos Java 2D y 3D, puede darte un punto de partida, mira aquí:
http://code.google.com/p/lucu
Taksan
fuente
Aunque no es compatible con 3D, pulpcore es un buen marco de juego. No lo he usado personalmente, pero he navegado por el código solo para comprobarlo, y se ve bien.
fuente
RedDwarf es un motor de juegos Java. Este es el antiguo Proyecto DarkStar que Sun usa para financiar.
fuente