kkrieger: A prova de que “Menos” Também é “Mais”

 

     Quem já jogou algum jogo de computador sabe que normalmente os Jogos 3D ocupam um considerável espaço no computador após instalado. Normalmente, o tamanho do Jogo varia, desde alguns Megabytes até mais de 2Gb. Pois bem, o pessoal da theprodukkt (http://www.theprodukkt.com/kkrieger) conseguiu desenvolver um jogo 3D em primeira pessoa (FPS), cujo executável do jogo, um único arquivo .exe, possui o tamanho de exatamente 97.280 bytes, ou seja, pouco menos de 100kBytes. Para se ter uma idéia, em um jogo convencional, normalmente a engine do jogo (.exe) tem cerca de 1 a 2Mb de tamanho, e ainda tem os arquivos  de banco de dados de texturas, sons, e outros dados do jogo.

        Mas, qual é o “milagre” então?

        Segundo os criadores do game, eles otimizaram tudo. A idéia por trás do programa é a de se otimizar tudo a todo momento. Já de inicio, toda a extensão do Directx é usada a fim de se usar sempre funções prontas no direcx para criar objetos. As texturas são criadas a partir de algoritmos reutilizados, somados, e tudo o que já foi usado em uma textura é reaproveitado para fazer outras texturas, e assim as mais complicadas texturas são criadas e indexadas. Os objetos também são repetidos, ou seja, as fases, apesar de serem enormes, possuem muita coisa repetida, e percebemos que tudo foi feito com base em algoritmos de repetição, simetria e geração de posições com base em algoritmos matemáticos. Exitem 4 tipos de inimigos, 1 aranha, 2 robos  e um “demônio”, que se repetem no Jogo. O som do jogo utiliza o mapeador Midi, que consegue reproduzir áudio de boa qualidade com um mínimo de instrução (recurso este muito usado nos antigos jogos de DOS), mas, detalhe:  A saída do jogo é instrução midi, mas quem gera o som também é uma função otimizada, uma vez que a música pode ser definida também por regras matemáticas. Enfim, KKrieger  é um jogo literalmente feito a base de programação. Eu confesso que sou um dos críticos que afirma que hoje em dia nós, programadores, gastamos recursos demais por não otimizarmos nossos códigos. Tá, é bem verdade que a programação do jogo, que levaria algo em torno de 6 meses para ser desenvolvido levou 4 anos, o que é algo fora da realidade comercial de qualquer empresa, e o game é bem “limpo” de recursos, configurações e etc.  Mas vale como Insight: Não é a memória do nosso sistema que “acabou”, é a gente que está gastando memória demais com códigos ineficientes…

Abaixo um Screenshot do game:

     Outro detalhe importante do Game: Segundo os desenvolvedores, não quer dizer que “porque o game é pequeno” que ele gasta poucos recursos do PC. Na verdade, ele gasta em torno de 200 a 300Mb de memória para ser executado. O que ocorre é que o game gera as texturas em tempo real, ou seja, todas as texturas são operações matemáticas. Enfim, um “estado da arte” no que diz respeito a otimização de código.

      Particularmente, esse é um dos motivos pelo qual critico no post passado o novo Windows 7: Nem sempre “mais” é melhor. Melhor mesmo é podermos trabalhar de forma mais rápida e eficiente com o pouco que temos. Veja em (https://clebermag.wordpress.com/2010/09/21/meu-ultimo-post-a-respeito-da-minha-experiencia-com-windows-seven/)

Anúncios

Uma resposta to “kkrieger: A prova de que “Menos” Também é “Mais””

  1. kkrieger: A prova de que “Menos” Também é “Mais” « Carl Roberson's Says:

    […] Confira mais no Blog do Clebermag […]

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s


%d blogueiros gostam disto: