Comecei no GiThub, juntamente com o Mark, um novo projeto chamado Alegria. A idéia é ser um Engine 2D para Java, completamente OpenSource, baseado na LWJGL.
Esse projeto vai ser tocado nas horas vagas, como um hobby. Ele tem o objetivo de servir de estudo e ao mesmo tempo de base para as minhas aulas de inteligência artificial e física pra jogos. Também pretendo desenvolver uns joguinhos com ele, por diversão (desde que encontre algum artista de bom coração).
E lógico, o conteúdo aprendido vai gradualmente virar tutoriais e artigos para o Ponto V!
Antes que perguntem:
1. Por que Java?
Primeiro, porque é uma linguagem que eu e o Mark gostamos. Somos membros ativos (tão ativos a ponto de sermos moderadores) do GUJ, um dos maiores fóruns de Java do Brasil. E, como somos os donos do projeto, foi uma escolha um tanto natural.
Segundo, pois é bastante produtivo programar em Java. Nada de dangling pointers e outros traumas do C++. Queríamos uma linguagem para nos divertir programando e sem muita escovação de bits.
E terceiro, porque é uma linguagem muito popular. Uma pena que não tenha sobrecarga de operadores, mas como integraremos o groovy, esse “detalhe” pode ser facilmente contornado.
1.1. Mas eu amo C ou C++, fico sem alternativa?
Não. Conheça os projetos Chien2D (em C) e GameSpaceLib 2.0 (C++). Ambos de pessoal fera da área e autores do Ponto V!
2. Vai ser free?
Sim, LGPL.
3. Quando terei um build para baixar e usar no meu projeto?
Não estamos prometendo prazos, nem datas, e nem que as primeiras versões serão estáveis e compatíveis entre si. Se déssemos esse tipo de promessa, a coisa viraria trabalho e não hobby.
Entretanto, iremos traçar alguns objetivos mais ousados num futuro próximo, até para o projeto não morrer de vez (como por exemplo, participar de algum Game Jam ou da SBGames com ele). A definição destes dependerá do calendário para o ano que vem.
4. Por que a LWJGL?
Acreditamos que não há motivos para não se utilizar o hardware da placa de vídeo hoje em dia. Jogos como Aquaria, Penumbra ou World of Goo, mais do que provam essa teoria. A OpenAL ainda fornece suporte a som 5.1 ambiental, o que torna a experiência de games mais rica.
5. Que versão da OpenGL será necessária para rodar o projeto?
Versão 2.0, ou até superior. E sim, iremos tentar dar um bom suporte à Shaders.
6. Por que 2D e não 3D?
Não queremos concorrer com a JMonkeyEngine, mas não descartamos a hipótese de brincar um pouco com três dimensões no futuro.
Bom, é isso. Aceito comentários, sugestões, etc…
Delicia demais esta notícia, tanto para desenvolvedores de jogos quanto para nós programadores mesmo, porque passar a vida corrigindo ponteiro fujão num terreno aonde não precisaria é dose.
Acho que não falta nada a dizer.
O projeto vai ser interessante e vai dar para aprender bastante coisa.
Sei que vai levar bastante tempo para terminar, mas o resultado vai valer muito a pena, fora que programar jogos apenas como hobby vai ser divertido durante esse tempo.
Esperamos com isso, ajudar a comunidade Java e de Gamers também, através dos artigos e do projeto OpenSource.
Pingback: Projeto Alegria « Marky Vasconcelos Creative Solutions
Muito legal a iniciativa!
Parabéns pela iniciativa. Onde podemos encontrar os night builds? Onde podemos encontrar os fontes para poder acompanhar a evolução, testar e contribuir?
Ainda não temos nightly builds. O projeto mal começou.
Informações sobre como contribuir, qual são nossas code conventions, etc, podem ser encontradas no próprio site da alegria: http://alegria2d.com
ótima notícia!