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.
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.
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?
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?
[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.
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. =/