Existe uma biblioteca semelhante a XNA para Java? [fechadas]

12

Estou curioso para saber se existe uma biblioteca semelhante a XNA para Java; isto é, uma biblioteca que

  1. Lida com o loop do jogo - ou seja, você acabou de implementar um método existente, e ele será chamado de todos os quadros.
  2. Lida com a renderização - ou seja, você apenas diz o que renderizar, ele cuidará de exibi-la no monitor, ocultando detalhes de implementação, como aceleração de hardware.
  3. Contém muitos métodos úteis para opções gráficas, sonoras e de entrada do usuário.

Estou interessado em uma biblioteca que suporta as opções 2D e 3D.

Carvalho
fonte

Respostas:

15

De acordo com seu primeiro requisito, você está procurando uma estrutura em vez de uma biblioteca.

O jMonkeyEngine é uma estrutura para jogos 3D (ou seja, fornece o loop principal conforme solicitado, semelhante ao XNA), mas não seria uma boa opção para 2D.

No entanto, um loop de jogo não é algo difícil de escrever , e as bibliotecas Java existentes atendem aos seus 2º e 3º requisitos, por isso sugiro pesquisar em uma biblioteca / mecanismo 3D de gráfico de cena ou em qualquer biblioteca 2D, dependendo se você estiver criando um jogo 2D ou 3D.

Aviatrix3D , Ardour3D , Java3D e jMonkeyEngine são minhas recomendações para os motores 3D de cena gráfica.

Para bibliotecas 2D, você possui o JGame ou pode optar por usar o OpenGL para obter a velocidade máxima e usar LWJGL ou JOGL . Você também pode simplesmente usar a biblioteca Graphics2D integrada do Java , o que seria uma opção especialmente boa se você planeja implantar seu jogo como um applet.


Para seguir a rota Graphics2D embutida, observe o código-fonte da Metagun (clique para reproduzir no formato de applet). É um jogo Java 2D pequeno, mas muito bem escrito, e acho que é um excelente exemplo de jogo pequeno; copie sua estrutura e você terá seu loop / estrutura ideal para o jogo.

Ricket
fonte
6

Slick é uma boa biblioteca Java 2D baseada em LWJGL. Ele lida com o loop do jogo, a renderização e contém funcionalidades úteis para implementar sprites.

Ele vem com muitos demos e exemplos diferentes.

David Young
fonte
1
Preciso concordar com essa recomendação Slick é a melhor opção que eu já encontrei. Escrevi vários jogos com o Slick e um com o XNA e, na verdade, sou a favor do Slick para projetos em 2D.
Alex Schearer
Slick é incrível para projetos 2D. Eu recomendo.
Bryan Denny
Slick não é tão conhecido e apreciado como deveria ser. Eu o usei antes e fiquei agradavelmente surpreendido a cada passo com o quão bem ele foi projetado. É por causa do Slick que eu prefiro o Java para o desenvolvimento de jogos em 2D.
Zach Conn
2

Se você quer uma estrutura única para suportar 2D e 3D, o mais próximo que eu já vi é o jPct. É 3D, mas dentro de seus fóruns eles têm alguns ajustes para fazer 2D.

Eu recomendo que você use o Xith3D ou o Java Monkey Engine para 3D. E Slick ou GTGE para 2D.

Estou escrevendo um livro sobre desenvolvimento de jogos java, já completei os capítulos sobre o básico para desenvolvimento de jogos java 2D e 3D, ele pode dar um ponto de partida, veja aqui:

http://code.google.com/p/lucu

Taksan


fonte
0

Embora não suporte 3D, o pulpcore é uma boa estrutura de jogos. Eu não o usei pessoalmente, mas pesquisei o código apenas para verificar e parece bom.

Chii
fonte
-1

RedDwarf é um Java Game Engine. Este é o antigo Projeto DarkStar que a Sun usa para financiar.

zooropa
fonte
RedDwarf é um "framework" de jogo em rede Java, mas principalmente a parte do servidor. Não é realmente um motor de jogo.
Ricket 11/11/10