Como jogos antigos eram programados?
Olá a todos!
Meu nome é Max e este é o primeiro artigo que posto aqui na DIO! Qualquer feedback/opinião é bem-vindo!
Qualquer erro na história pode comentar também!
Agora, fiquem com o artigo :)
Limitação
Limitação era a palavra que determinava todo o processo de desenvolvimento na época, não só de programas de computador mas de games também.
Em 1981, Bill Gates disse que ninguém no mundo precisaria de mais de 640kb de memória RAM, que era o que o IBM PC, que havia acabado de lançar, tinha.
Parece absurdo pra gente, mas na época fazia bastante sentido, visto que as memórias dos computadores da época eram extremamente baixas, por volta de 64kb, 10 vezes menos.
O que eles conseguiam fazer naquela época com esse espaço era trabalhar com o melhor código possível, no menor espaço possível.
E é exatamente essa ideia que deveria ser aplicada no desenvolvimento de jogos na época, como no Famicom, ou como a gente conhece, o Nintendinho.
Super Mario Bros
Nesse artigo eu vou falar apenas um pouco sobre um dos jogos mais famosos desse console.
O Super Mario Bros, lançado em 85, tinha o tamanho de 32kb apenas.
Olhando nos dias atuais, isso é um valor absurdamente baixo, visto que os jogos estão já ocupando mais de 100gb de espaço!
Como fizeram um jogo inteiro ocupar apenas míseros 32kb?
Vou tentar responder essa pergunta aqui!
A linguagem de programação
Hoje em dia a gente tem muita facilidade em aprender a programar e não temos que nos preocupar com milhares de coisas, pois a maioria já é feita automaticamente.
Por exemplo, em Python e JavaScript já temos diversas ferramentas na linguagem que manuseiam a memória e funções que são úteis e sempre utilizadas.
Na época não havia espaço para linguagens de alto nível e compiladores. Elas seriam MUITO pesadas para a época e seria impossível trabalhar com as limitações do Nintendinho. Tudo era feito em Assembly puro, ou seja, tudo era escrito na linguagem que a máquina entende.
Era com essa linguagem que permitia os desenvolvedores usufruir o melhor que podiam do hardware da época, ocupando menos espaço, uma tarefa extremamente difícil.
Os sprites
Para quem não sabe, os sprites são as imagens dos personagens, inimigos, cenários etc.
Não vou explicar como funciona os sprites no Nintendinho senão iria ficar extremamente longo, mas já posso adiantar que obviamente não havia muito espaço para colocar diversas imagens.
A técnica era reutilizar o máximo de sprites que conseguiam. Se você observar bem quando for jogar o jogo, vai perceber que as imagens dos arbustos do jogo são as mesmas imagens das nuvens, apenas com cores diferentes. E se seguir a mesma linha, veria que vários sprites eram reutilizados, apenas Nintendinho mudava as cores pelo código.
Finalização
Dá para escrever milhões de informações sobre como funcionava os jogos e as outras mil limitações que eles enfrentavam ao desenvolver esses jogos que fizeram parte da infância de muitos, mas resolvi apresentar apenas esses dois pontos para dar uma amostra de como esse universo do desenvolvimento de software evoluiu, cresceu e mudou muito ao passar dos anos, e despertar a vontade de aprender tudo sobre o assunto.
Para quem quiser saber mais sobre o assunto, recomendo os vídeo do Fábio Akita no link abaixo, que explica de forma BEM mais detalhada que esse artigo:
https://www.youtube.com/watch?v=hYJ3dvHjeOE