Baixei 2 versões Java3D sdk… uma para DirectX e outra para OpenGL
Pergunto: o J3D consegue ser transparente ao programador, no que diz respeito à API(DirectX/OpenGL) utilizada em baixo nível? ou seja, se eu desenvolvo uma aplicação utilizando java3d-opengl, e quiser rodar ela em directx, basta trocar a api utilizada para java3d-directx, sem necessidade de mexer nos meus fontes?
Outra coisa… como fica o desempenho? É possivel fazer(se tiver uma boa equipe trabalhando, é claro…) desenvolver, usando Java3D um jogo tão bom quanto eu posso desenvolver em C ou C++, com um desempenho mais ou menos proximo do jogo em C ou C++?
Olá,
O Código é transparente sim!!! Ele é todo Orientado a Objeto! Bem alto nível!
Não precisará alterar código não!!
Já criação de jogos e dfesempenho não posso dizer pq não vi nenhum pessoalmente… mas posso te dizer que não chega a igualar o C/C++ não! De forma alguma! Vemos a os bindings Java para OpenGL quase chegar no desempenho do C/C++ mas o Java3D acho difícil!!
[quote=“clv”]Olá,
O Código é transparente sim!!! Ele é todo Orientado a Objeto! Bem alto nível!
Não precisará alterar código não!!
Já criação de jogos e dfesempenho não posso dizer pq não vi nenhum pessoalmente… mas posso te dizer que não chega a igualar o C/C++ não! De forma alguma! Vemos a os bindings Java para OpenGL quase chegar no desempenho do C/C++ mas o Java3D acho difícil!!
Até mais![/quote]
Na verdade estavam desenvolvendco um MMORPG em java, e era muito bonito e tinha um otimo desempenho…mas nada absurdo.
JAMAIS queira comparar com algo como Doom3 por exemplo…mesmo com a equipe competente, tempo e dinheiro, o programa não rodará nem em uma fração de velocidade:
Primeiro por que em cálculos, o java é mais de 40% mais lento.
Segundo que em jogos bisonhos como esse, tem MUITO assembly (principalmente quake por exemplo).
cara java3D é bom mas vc ainda tem que usar o JNI e codificar a parte gráfica em c e quanto ao desempenho naum é muito bom
mas pra programação gráfica em java + open/gl
existe uma API opensource e free
lwjgl
que está sendo usada por empresas de desenvolvimentos de jogos, apresenta um ótimo desempenho e é muito simples de programar
eu estou utilizando essa api atualmente, mas ainda estou estudando ela
mas até agora os testes que eu fiz essa API se saiu muito bem
o principio dela é dividir em tres partes de processamento para ganhar mais velocidade
com oq em java torna ruim para a utilização para programação gráfica e programação de jogos é o tratamento de eventos e a forma como os quais são feitos
onde quando ocorre um evento o mesmo é processado na mesma area onde estah sendo processado a parte que gera a representação gráfica
sendo uma forma de tratamento muito ruim
mas essa API lwjgl que estou estudando ainda trata de forma diferente
o processamento
tem 3 areas:
processamento gráfico
processamento de eventos
processamento de sons
cada um independente do outro quanto a processamento
[quote=“mavi”][quote=“clv”]Olá,
O Código é transparente sim!!! Ele é todo Orientado a Objeto! Bem alto nível!
Não precisará alterar código não!!
Já criação de jogos e dfesempenho não posso dizer pq não vi nenhum pessoalmente… mas posso te dizer que não chega a igualar o C/C++ não! De forma alguma! Vemos a os bindings Java para OpenGL quase chegar no desempenho do C/C++ mas o Java3D acho difícil!!
Até mais![/quote]
Na verdade estavam desenvolvendco um MMORPG em java, e era muito bonito e tinha um otimo desempenho…mas nada absurdo.
JAMAIS queira comparar com algo como Doom3 por exemplo…mesmo com a equipe competente, tempo e dinheiro, o programa não rodará nem em uma fração de velocidade:
Primeiro por que em cálculos, o java é mais de 40% mais lento.
Segundo que em jogos bisonhos como esse, tem MUITO assembly (principalmente quake por exemplo).[/quote]
em java se pode usar JNI e misturar com assembly!!!
mas java ainda tem q melhorar bastante o desempenho pra poder competir em desempenho com C/C++…
Opa,
Pra quem não viu… dias atráz saiu uma notícia sobre o Jake, a versão java (JOGL) do engine do Quake 2!!!
Os benchmarks mostram que java não estámuito longe não!!!
E com o 1.5 melhora o desempenho!!!