C++ ou Java para Jogos, por que?  XML
Índice dos Fóruns » Assuntos gerais (Off-topic)
Autor Mensagem
Lucas Emanuel
GUJ Master

Membro desde: 09/08/2009 23:48:57
Mensagens: 1143
Localização: Heap
Offline

Pessoal,

Ouço muito dizer que C++ é melhor para programar jogos, porem o Java tem API 2D e 3D.

Qual é melhor para Jogo e Por que?
fabiozoroastro
GUJ Master
[Avatar]

Membro desde: 15/05/2006 16:23:01
Mensagens: 1262
Offline

Eu acho que com certeza você quer entrar nesse site: http://www.pontov.com.br



Até mais.

[]'s

..."Apenas sorria!"

Twitter

Blog

renamed
GUJ Ranger

Membro desde: 21/09/2009 08:47:57
Mensagens: 889
Localização: Rio de Janeiro
Offline

Eu vi um trabalho de faculdade de uns colegas meus que disseram que o Super Nintendo foi desenvolvido em C++ .

Quando eu comecei em Java (2007) eu ouvi muito que Java não era bom pra aplicações em tempo real (como jogos) por causa da máquina virtual que, teoricamente, era mais lenta que um executável...

Mas eu ouvi uns colegas aqui do forum falando que a máquina virtual Java já está conseguindo ser tao rapida qnt programas escritos em C++, Delphi, VB 6 etc... só não sei se é totalmente verdade!

This message was edited 1 time. Last update was at 09/12/2009 13:08:54


flw!
===========================

CV: http://lattes.cnpq.br/7235056457600426
[MSN]
Naruffy
JavaEvangelist
[Avatar]

Membro desde: 28/03/2008 18:54:49
Mensagens: 324
Offline

Eu venho estudo programação de jogos e também percebo isso, todo mundo dizendo que C++ é melhor, porém eu desenvolvo meus jogos em java e acho muito bom, não tanto material QUANTO existe para C++, mas o java desempenha muito bem o papel na criação de jogos.

[]s
kicolobo
Moderador
[Avatar]

Membro desde: 19/07/2006 14:11:09
Mensagens: 1188
Localização: Belo Horizonte
Offline

C++ te da um controle maior sobre a máquina, esta é uma das razões pelas quais é mais adotado.

Mas isto não quer dizer que Java seja lento pra desenvoler jogos. Da uma olhada nisto: http://bytonic.de/html/jake2.html
É o Quake 2 implementado em Java (eu já testei, e funciona muito bem).

http://devkico.itexto.com.br

Twitter: http://www.twitter.com/loboweissmann

Vamos aprender Grails?
http://www.grailsbrasil.com.br
[WWW] [MSN] [ICQ]
peczenyj
Moderador
[Avatar]

Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline

Aproveitando, alguem tem acompanhado o C++0x?


http://www2.research.att.com/~bs/C++0xFAQ.html

http://pacman.blog.br

'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.'
[WWW]
clone_zealot
JavaEvangelist

Membro desde: 21/11/2004 16:40:00
Mensagens: 424
Offline

A maior (e mega) vantagem do C++ é o suporte a bibliotecas de terceiros.
OpenGL, Directx, OpenCV, Cimg, só para citar exemplos que eu lembro agora...

O dia que existirem equivalentes em Java, dai não vejo porque ignorar completamente o Java para jogos.

Ahhh, para jogos 2D simples, Java (com as atuais bibliotecas) da muito bem conta do recado.

"Não amo a espada por sua agudez,
não amo a flecha por sua rapidez,
não amo o homem por sua glória,
amo sim, tudo o que eles defendem"
Faramir, Príncipe de Ithilien
pablosaraiva
JavaGuru

Membro desde: 27/03/2009 17:08:37
Mensagens: 243
Offline

Alguém sabe se tem como você mandar instruções pra GPU com o Java?

(É uma pergunta mesmo, não sei).


Existem 10 tipos de pessoas no mundo. As que conhecem binário e as que não.
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Offline

O crítico de escolherem c++ para criarem jogos, é que o código gerado pelo compilador é muito otimizado para uma plataforma específica, e tudo que se faz em assembly se faz com c++ ou c, de maneira infinitamente mais fácil, além da performance ser praticamente a mesma.

As apis java para 3d ou para jogos, na verdade são mapeamentos para bibliotecas escritas em c++, normalmente opengl ou directx, como a jmonkey, que usa jogl(mapeamento opengl), ou java3d, que usa directx ou opengl.
Na verdade, uma máquina está rodando código c++ quando roda um jogo java, que usa um desses mapeamentos. Por isso é tão rápido quanto c++.

O forte do java é a praticidade de codificação. Se procurar performance, terá que usar um compilador de c++ ou de c.

www.citrox.com.br
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Offline

pablosaraiva wrote:Alguém sabe se tem como você mandar instruções pra GPU com o Java?

(É uma pergunta mesmo, não sei).



faz em c++ ou assembly, e usa jni.

www.citrox.com.br
GabrielCardelli
GUJ Ranger
[Avatar]

Membro desde: 25/10/2008 13:07:31
Mensagens: 823
Localização: Rio de Janeiro
Offline

Mano...

runescape.com.br (java foda! nunca vi = )

Gabriel Cardelli
http://www.opengti.com.br
[Email]
Naruffy
JavaEvangelist
[Avatar]

Membro desde: 28/03/2008 18:54:49
Mensagens: 324
Offline

GabrielCardelli wrote:Mano...

runescape.com.br (java foda! nunca vi = )


Verdade, runescape é feito em java, apesar de muitos criticarem esse jogo eu gosto bastante.

[]s
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Offline

qualquer linguagem que tenha uma biblioteca gráfica pode ser usada para jogos. Mas em se falando de linguagens que geram pseudo código, normalmente essas bibliotecas serão mapeamentos para uma em c++ com opengl ou directx.

www.citrox.com.br
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20578
Localização: Curitiba/PR
Offline

fabiozoroastro wrote:Eu acho que com certeza você quer entrar nesse site: http://www.pontov.com.br


Em especial nesse artigo, que tem muitas comparações entre o Java e o C++.

Na minha opinião:
Celulares? Java, Objective-C (iPhone)
Browser? Flash
Quer entrar na indústria de games hardcore? C++
Quer fazer jogos hardcore por hobby, só pq vc curte jogos? Java ou C#
Quer só estudar as tecnologias da área de jogos? Java ou C#

Outro jogo quase integralmente feito em Java é o brasileírissimo taikodom:
http://www.taikodom.com.br

Não entendi o seu "porém o Java tem API 2D e 3D". O C++ tem dezenas de APIs 2D, e as principais APIs 3D do mercado.

This message was edited 3 times. Last update was at 10/12/2009 13:17:01


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
mochuara
GUJ Master
[Avatar]
Membro desde: 20/05/2009 11:21:32
Mensagens: 1776
Offline

Lucas Emanuel wrote:Pessoal,

Ouço muito dizer que C++ é melhor para programar jogos, porem o Java tem API 2D e 3D.

Qual é melhor para Jogo e Por que?


Voce quer programar pra que? PCs? Celulares? Consoles? George Foreman grill?

Mencionar a plataforma é fundamental porque é ela quem decide a linguagem que vai usar. Celulares por exemplo estariamos falando do iphone, neste caso sua unica opção seria Objective-C/C++.
 
Índice dos Fóruns » Assuntos gerais (Off-topic)
Ir para:   
Powered by JForum 2.1.8 © JForum Team