terça-feira, 1 de fevereiro de 2011

Game Coding Complete

Comecei a ler os livros 3D Game Engine Architecture, 3D Game Engine Design e 3D Game Programming All In One. Nenhum deles me agradou e parei pouco tempo depois. Pra aguardar a chegada do Large-Scale C++ Software Design resolvi dar uma olhada no livro Game Coding Complete e não é que gostei.

Não vou escrever muito a respeito do livro aqui, pois vou acabar fazendo um post igual ao último. Vou deixar apenas alguns comentários a respeito do livro em geral.

Pra começar é um livro a respeito de programação de jogos como um todo, então os assuntos são muito mais abrangentes do que os tratados no livro 3D Game Engine Programming. Achei que o livro dá uma visão geral muito bacana, mostrando as camadas mais comuns encontradas em um jogo e como separá-las de forma que o o resultado seja flexível, para isso adotando um sistema de envetos, gerenciamento de processos e scripts com Lua.

Esta abordagem diferente permite mostrar como programar um jogo, que é a lógica que executa por trás da engine. Neste aspecto achei o conteúdo apresentado pelo livro muito bom, pois não se restringe apenas a dizer como a estrutura deve ser, mas apresenta código que implementa esta estrutura e utiliza vários aspectos interessantes da linguagem C++ que tornam a programação mais fácil, tal como smart pointers, e os quais o autor tem o cuidado de explicá-los, já que não são próprios da linguagem e sim extensões. Além disso a estrutura apresentada pelo autor é muito flexível, permitindo extender facilmente a lógica do jogo, seja através da escrita de novas classes, seja pela escrita de scripts em Lua.

Achei uma ótima leitura. Agora vou devorar o Large-Scale C++ Software Design!