Onde posso encontrar bons exemplos (bem organizados) de código de jogo? [fechadas]

42

Onde posso encontrar bons exemplos (bem organizados) de código de jogo? Espero poder pegar algumas dicas organizacionais. A maioria dos exemplos de livros é muito curta e deixa de fora muitos detalhes por uma questão de brevidade. Estou particularmente interessado em como agrupar suas variáveis ​​e métodos para que outro programador saiba onde procurar no código. Por exemplo, inicializadores na parte superior, métodos que recebem entrada e métodos que atualizam visualizações.

Eu não me importo com um idioma específico, desde que seja POO. Eu olhei para as fontes do Quake 2 e 3, mas elas são diretas C e não ajudam muito a obter dicas sobre como organizar seus objetos.

Então, você viu alguma boa fonte? Qualquer indicação de código que faça você dizer "uau, isso é bem organizado" seria ótimo.

smasher
fonte
1
Esta não é realmente uma resposta direta, então deixarei como comentário. Eu recomendo verificar o livro Design de software C ++ em larga escala de John Lakos. Foi muito esclarecedor para mim.
precisa saber é o seguinte

Respostas:

19

Vários jogos comerciais tiveram seu código fonte lançado. Alguns dos jogos estão listados aqui . Não há garantia de que o código esteja bem organizado, mas olhando para algum código-fonte de jogos que tiveram sucesso comercial, você pode ter uma boa idéia do que funciona na prática.

Além disso, apesar de não ser um jogo, o OpenSceneGraph possui muitos dos componentes de um jogo e é bem arquitetado em C ++, usando diferentes padrões de design, plug-ins etc. É uma base de código suficientemente grande e existe há tempo suficiente para que você possa aprender muito disso.

kevin42
fonte
1
Obrigado, a lista da Wikipedia foi útil. A primavera é muito bem organizada - todos os métodos são agrupados por função geral (carregar / salvar, desenhar, etc) github.com/spring/spring/blob/master/rts/Game/Game.h Aquários me fez sentir melhor por conta própria organização do código: hg.icculus.org/icculus/aquaria/file/f08b7288f92c/Aquaria/… No entanto, não devo criticar, artistas de verdade são enviados.
Smasher
Eu acrescentaria Ogre como uma boa referência com OpenSceneGraph ...
Klaim
6

A batalha por Wesnoth é:

Jogo de estratégia tático gratuito, baseado em turnos, com um tema de alta fantasia, com combate para um jogador e multijogador online / hotseat

Gratuito como em código aberto, sob a GPL. Eu apenas encontrei / transferi-lo, por isso não posso dizer o que a jogabilidade é como ainda, mas é chegado grandes comentários. Também não sei se o código deles é "bem organizado" :) Mas ei, é de código aberto .

Cyclops
fonte
Realmente engraçado :): p
Qchmqs
4

Se você está procurando um bom OOP - gostei bastante do modelo de objeto do Doom3 SDK .
Ogre3D é um projeto pesado de OOP, mas enfatizo pesado, pois acho que está bastante inchado com muitos exemplos e plug-ins.

Diz-me o que pensas.

Adam Naylor
fonte
2

Eu tenho código-fonte para bibliotecas e jogos completos no meu site Another Early Morning, você também pode encontrar alguns projetos na minha página do GitHub . Nem tudo é um exemplo brilhante de qualidade, mas isso costuma acontecer quando você deseja enviar algo.

Alex Schearer
fonte
0

Eu tenho a fonte de uma fonte simples que estamos usando para uma competição de guerra de código na Windward Wrocks . Eu acho que é bem organizado e é bem simples. Mas certas partes foram criadas rapidamente, não muito bem. Com isso dito, mesmo nas maiores equipes de desenvolvimento de jogos, há partes naquelas que são escritas rapidamente, não muito bem.

David Thielen
fonte