Engines e frameworks open source no GitHub
O GitHub é uma ótima plataforma para versionamento de projetos com código aberto usando git, mas ele não é apenas isso. Existem muitas features no GitHub que as vezes parecem escondidas mas valem muito a pena ver. Uma parte que eu descobri recentemente foi a página Showcases, que agrupa listas de projetos por categorias. Não todos, mas os mais populares.
Neste link está a lista de game engines e frameworks que são open source, populares e ativos no GitHub. Abaixo vou comentar sobre algumas engines e frameworks que eu conheço e já usei, mas recomendo você a conhecer todas as 24 que estão no link (assim como eu também vou fazer!).
Esta é um dos meus frameworks preferidos para fazer jogos em C++. Conheci há uns 4 anos quando estava trabalhando na Electronic Arts, e desde então sempre usei para fazer protótipos e até um jogo na última edição do Ludum Dare.
Nesses 4 anos este framework cresceu muito, ganhou ótimas tools e suporte de muitos desenvolvedores. Mudou tanto que quando fui utilizar no Ludum Dare tive que dar uma estudada novamente na documentação por que mudaram praticamente todas as classes e a maneira de usar algumas coisas, principalmente se adaptando ao C++11.
Embora eu conheça este engine há um tempo, só quando se tornou open source que eu tive oportunidade de testar. Ainda não fiz algo maior que um protótipo simples com ela, mas quem sabe no futuro não uso em algum projeto ou game jam. A linguagem de programação utilizada também é C++.
Se o seu computador consegue rodar Crysis baixe esta engine e faça alguns tutoriais para conhecê-la. Uma curiosidade: a engine da Amazon, Lumberyard, foi feita em cima da CRYENGINE.
O Mono surgiu como um projeto open source para permitir o desenvolvimento de software com C# em sistemas Unix (Linux e Mac), e o MonoGame surgiu como um framework semelhante ao XNA da Microsoft para desenvolvimento de jogos.
O XNA foi um framework muito especial pra mim, fiz vários projetos nele quando comecei a estudar desenvolvimento de jogos, e até o meu TCC por eu ter experiência com C# na época. Eu usei o MonoGame algumas vezes mas não gostei muito, acho que estava esperando algo realmente como o XNA, porem ele tem suas próprias características. Mesmo assim, vale a pena dar uma olhada.
A Torque foi a primeira engine que eu ouvi falar por que um amigo estava fazendo seu TCC com ela quando eu trabalhei na Level Up! Games. Naquela época ela era a opção com melhor custo/benefício, e acho que existia apenas a versão 3D.
Há algum tempo a GarageGames abriu o código das suas duas engines para poder continuar atraindo desenvolvedores, já que hoje existem muitas opções gratuitas.
Outras engines e frameworks
Embora não esteja nesta lista, por ser um repositório privado, a Unreal Engine tem seu código aberto e basta se cadastrar no site para ter acesso. Existem outras engines e frameworks que são open source porém não estão hospedadas no GitHub, como os frameworks SDL e Irrlicht. Como o objetivo do post foi comentar sobre esta lista do GitHub não coloquei aqui as opções que não estão lá, mas basta dar uma olhada na Wikipedia que você encontrará muitas opções.
Imagem da capa: Game Developing on the Golden Gears do Shutterstock.