Objetos 3D em Java (arquivos .dat)

Olá,
Estou aqui pra tirar uma dúvida sobre imagens 3D em aplicativos Java.
Eu tenho aqui, uma biblioteca com mais de 30 mil imagens 3D, de objetos, monstros, etc, que estão no formato .dat.
Queria saber se tem como eu incluí-las no meu projeto, e como faço isso. :P.
Fiz o upload de duas para vocês terem uma ideia.

Seguem os links:

IMG 1: www.mundo133.com.br/~java/34132.dat
IMG 2: www.mundo133.com.br/~java/33997.dat


Vou precisar adicionar alguma biblioteca, e tal?
Obrigado. ;).

Obs: Não vou compartilhar os arquivos, porque pelo que sei, são de um jogo que vazou da produtora, então, não se se pode ser repassado.
Obs2: O uso desses arquivos é totalmente didático, não tenho intenção de usa-los para fazer um jogo ou algo do tipo, os peguei só para ter uma ideia de programação em Java 3D.
Obs3: Acabei de ver que tem como fazer upload aqui. :P. Fiz o upload dos arquivos aqui também, ai fica de sua decisão.

.dat é uma extensão genérica para “arquivos contendo dados”. A menos que você conheça como esses dados estão organizados, vai ser muito difícil ler esses arquivos.

Um arquivo 3D é ainda mais complicado, pois seu conteúdo provavelmente serão uma lista de vértices, normais e mapeamentos de textura.
Dados assim são difíceis de dintinguir uns dos outros. Dessa forma, fica virtualmente impossível abrir o arquivo num editor hexadecimal, por exemplo, e tentar deduzir o seu formato.

Outra coisa. Geralmente não vale a pena perder tempo aprendendo Java 3D.

Se você quiser aprender 3D, use a LWJGL: http://lwjgl.org/

Ou, se quer ter uma experiência com 3D, mas não aprender os conceitos de 3D em si, veja o JMonkeyEngine: http://jmonkeyengine.com/

O desenvolvimento do Java3D é instável.
O projeto constantemente para, e é ressuscitado. Note que o histórico das versões datam de 2008:
http://download.java.net/media/java3d/builds/release/1.5.2/

@Vini,

Os arquivos são abertos por um programa Java, tenho código de execução e de descompilação dos arquivos, eles poderiam me ajudar a buscar o que é o que?

Será que pode me dar uma luz? :stuck_out_tongue:

Segue abaixo os arquivos:

Vou ver os links que me mandou.
Conheço o JMonkeyEngine, acho ele bem interessante, mas tenho o interesse mesmo de aprender como funciona o Java 3D, e quem sabe me aprofundar no assunto.

Esses arquivos não dizem nada quanto ao formato da malha. Apenas que alguns desses dats podem estar compactados com o gzip.
Não entendi, por que você quer se aprofundar no Java3D, se é um projeto morto?

Hm…
Pelo que eu havia entendido, o Java 3D era uma especificação pra programação java em 3D. (Noob here) haha.

Valeu ai pela luz, :P.

Vou dar uma olhada nesse LWJGL.
Pelo que entendi, essa LWJGL é uma engine, certo?

[quote=lazuks]Vou dar uma olhada nesse LWJGL.
Pelo que entendi, essa LWJGL é uma engine, certo?[/quote]

O LWJGL é um binding de Java para diversas APIs:

  • OpenGL;
  • OpenAL;
  • E entrada de dados (a API interna varia entre os sistemas operacionais);

Um engine mesmo é o JMonkey. Ele sim usa o LWJGL para te fornecer todo um ambiente para games.

O Java 3D seria mais próximo do JMonkey (embora muito menos poderoso). Ele começou mesmo como uma proposta de Engine 3D para Java, inclusive, ele faz parte de uma JSR. Essa proposta nunca foi aprovada, e foi oficialmente abandonada pela Sun antes mesmo da Oracle assumir o controle. O código então passou para a comunidade, que o manteve por algum tempo, mas foi abandonado, já que não havia qualquer suporte de um grupo grande por trás.

O Java3D era criticado também por ser lento, críticas que pesaram ainda mais quando o JMonkey entrou no mercado.

Valeu! :wink:
Vou dar uma olhada nas documentações. (:

Desculpa postar denovo,
só mais uma perguntinha, e prometo que vou embora, :P.

Como eu poderia usar o LWJGL para fazer um jogo por exemplo? (só exemplo, hehe, preciso estudar muiito antes. =/).
Usaria como complemento para algum programa? Direto no notepad, não entendi muito bem. =/

Ela é uma lib, então, vc pode associa-la a um projeto no Eclipse ou no Netbeans e sair usando suas classes.

Para usar a LWJGL você precisa conhecer a API que ela encapsula, a OpenGL. Dê uma olhada nos tutoriais de OpenGL do ponto v para isso:

http://www.pontov.com.br/site/index.php/opengl

Você pode começar a ler a partir desse artigo:
http://www.pontov.com.br/site/index.php/opengl/154-a-maquina-de-estados-opengl