OdonataJ - uma nova lib para jogos 2D

8 respostas
germanosk

Olá Pessoal,

Eu estou desenvolvendo uma lib para jogos 2D em java com funções e documentação em pt-BR como meu projeto final da faculdade.
Ela tem como objetivo ser um facilitador para o desenvolvimento de jogos para estudantes de programação que já tenham uma certa noção de lógica de programação, orientação a objetos e até mesmo de Java porém encontram dificuldade em entender o material das libs que tem por ai devido ao parco conhecimento em inglês.
Não tenho por objetivo ainda melhorar qualquer coisa função que eu esteja utilizando para que tenha um desempenho melhor ou coisa assim.
Apenas permitir que pessoas com pouca experiencia tenham uma ferramenta que lhes permita testar suas ideias e conceitos sem muito trabalho e com referencias na sua lingua nativa.
Após apresentar meu projeto final o que deve acontecer em breve, pretendo estar liberando a mesma para que possa crescer e ser utilizada livremente.
Mas gostaria muito da opinião de vocês quanto a utilidade de um material desses, para que enfim eu tenha uma noção se existe mesmo uma demanda por uma ferramenta livre desse porte ou se simplesmente vai ser um trabalho que vai contribuir unicamente para o desenvolvimento acadêmico.

Se alguém quiser conhecer alguma informação ou quiser dar alguma ajuda é só entrar em contato.

No mais agradeço pelo minuto de atenção de vocês.

8 Respostas

SirDominque

Rapaz, isso vai ser muito usado. A maioria do pessoal que começa a programar ja quer uma api pra desenvolver jogos.

Eu testarei. :stuck_out_tongue:

germanosk

Andre Lopes:
Rapaz, isso vai ser muito usado. A maioria do pessoal que começa a programar ja quer uma api pra desenvolver jogos.

Eu testarei. :stuck_out_tongue:


Obrigado pelo feedback. Como eu disse, eu estou terminado umas coisas dela e assim que estiver usável venho aqui e ponho o link para download da lib e dos docs.
Só espero não decepcionar pela simplicidade da mesma.
Posso adiantar que ela tem como objetivo facilitar:

  • Desenho de imagens.
  • Execução de sons.
  • Obter input de teclado e mouse ( que por sinal foi um parto mas transformei o funcionamento do mouse de orientado a eventos para orientado a objetos)
  • A classe Jogo no caso possui os 2 loops (desenho e logica)

Ou seja não é algo assim "Oh meu Deus que lindo e poderoso!"
Mas é algo bem simples que o cara possa fazer um Pong em uma aula de 30~45min sem muito esforço.

Ruttmann

germanosk:
Andre Lopes:
Rapaz, isso vai ser muito usado. A maioria do pessoal que começa a programar ja quer uma api pra desenvolver jogos.

Eu testarei. :stuck_out_tongue:


Obrigado pelo feedback. Como eu disse, eu estou terminado umas coisas dela e assim que estiver usável venho aqui e ponho o link para download da lib e dos docs.
Só espero não decepcionar pela simplicidade da mesma.
Posso adiantar que ela tem como objetivo facilitar:

  • Desenho de imagens.
  • Execução de sons.
  • Obter input de teclado e mouse ( que por sinal foi um parto mas transformei o funcionamento do mouse de orientado a eventos para orientado a objetos)
  • A classe Jogo no caso possui os 2 loops (desenho e logica)

Ou seja não é algo assim "Oh meu Deus que lindo e poderoso!"
Mas é algo bem simples que o cara possa fazer um Pong em uma aula de 30~45min sem muito esforço.

Cara, ótima idéia, apoio a iniciativa!

É simples, mas é o que o pessoal que começa quer. A maioria dos novatos quer fazer jogos já de cara, e é triste ver eles decepcionados com as libs gigantescas e complicadas que existem atualmente…

Uma lib simplificada e em português é o que falta. Acredito que vai se expandir bastante no meio acadêmico!

Aguardo o lançamento!

:smiley:

R

No Java já existem várias classes que nos permitem criar jogos, isso muitos sabem. AffineTransform, o próprio Canvas e etc etc… porém, como você mesmo disse, a dificuldade na maior parte é entender a documentação das mesmas, por isso, acho muito válido essa sua idéia de criar uma API que facilite a programação de jogos. Eu fiz um curso de Java 2D, consegui fazer algumas coisas, algumas animações, mas pra entender tudo foi a coisa mais “escrota”, tinha começado em java na época, e sabemos que nos, quando começamos, somos muito imaturos e queremos aprender tudo logo. Por isso a leitura das fontes se tornam cansativas.

Apoio sua idéia, quanto mais prático melhor, esse é um dos fundamentos da linguagem java afinal né =D.

Abraços.

InicianteJavaHenriqu

Simples, básica e em português :!: :?:

Eu também testarei :smiley:

:thumbup:

ViniGodoy

Uma das coisas que acho muito ruins da linguagem java para games é a falta de sobrecarga de operadores. Jogos são aplicativos muito matemáticos, e a sintaxe sem a sobrecarga fica tediosa e detestável.

Atualmente eu trabalho com uma lib educacional, também em português, chamada Chien2D:
http://code.google.com/p/chien2d/

Eu turbinei essa lib com um conjunto de classes matemáticas, parecidas com as que usei no ForFun.

Outras ferramentas legais são o Scratch:


E o Kodu:

Mas essas são bem básicas. Gosto de passa-las para o pessoal que está aprendendo algoritmos.

Que tipo de conceitos você gostaria que sua lib ensinasse para os estudantes?

germanosk

Obrigado galera, espero contar com a ajuda de vocês nos testes mesmo :smiley: .

ViniGodoy:
Uma das coisas que acho muito ruins da linguagem java para games é a falta de sobrecarga de operadores. Jogos são aplicativos muito matemáticos, e a sintaxe sem a sobrecarga fica tediosa e detestável.

Atualmente eu trabalho com uma lib educacional, também em português, chamada Chien2D:
http://code.google.com/p/chien2d/

Eu turbinei essa lib com um conjunto de classes matemáticas, parecidas com as que usei no ForFun.

Outras ferramentas legais são o Scratch:


E o Kodu:

Mas essas são bem básicas. Gosto de passa-las para o pessoal que está aprendendo algoritmos.

Que tipo de conceitos você gostaria que sua lib ensinasse para os estudantes?


Olá Vini
Então o Scratch eu conheci pelo meu orientador, o Kudo eu não lembro.
Não entendi sobre a sobrecarga. xD desculpa.
Mas é basicamente uma biblioteca que visa inicialmente atender aqueles requisitos que eu citei acima, e como estou fazendo uma documentação em pt-BR o objetivo é o programador possa carregar essa documentação em uma IDE decente como Netbeans ou Eclipse e ao solicitar ajuda por exemplo ctrl+espaço ver as funções o que elas fazem o que cada atributo faz e com isso inciantes possam entender como é a dinâmica da programação de um jogo.
Não pensei nem foquei em um conceito específico, apenas tive a ideia baseado na minha própria dificuldade quando entrei no curso de computação e estou fazendo meu melhor para que saia um material útil para a galera.
E o que eu estou fazendo chega a ser “idiótico” (desculpem o neologismo) pois estou usando as classes que o Java já possui estou apenas sobrecarregando as funções com nomes adaptados ao português e escrevendo uma documentação em português.

ViniGodoy

Sobrecarga de operadores permite que você implemente funções para os operadores matemáticos.

Por exemplo, você poderia ter a classe Vector2, que implementa o conceito de vetores. No java, para tirar a média de dois vetores, você teria que fazer:

Em linguagens com sobrecarga de operadores, isso poderia ser feito assim:

No C#, por exemplo, a classe equivalente ao ArrayList tem o operador de [] sobrecarregado. Então, você poderia fazer algo como:

IList<String> lista = new List<String>(); lista.Add("Olá"); lista.Add("Mundo!"); String x = lista[0]; //Pega o primeiro elemento

No Java, a única classe que tem um operador sobrecarregado é a classe String. O operador de + faz concatenação.
Mas isso não é por um mecanismo da linguagem Java em si, pois nós, reles mortais, não podemos fazer a mesma coisa com nossas classes.

Criado 25 de setembro de 2012
Ultima resposta 26 de set. de 2012
Respostas 8
Participantes 6