As primeiras consolas não tinham GPUs programáveis como as atuais. Durante décadas, chips gráficos especializados, sprites, tiles e processamento por linha de imagem foram a base dos jogos, até a arquitetura das consolas começar a aproximar-se do hardware dos computadores.

Gráficos feitos à medida para cada consola
Muito antes de existirem GPUs capazes de executar programas criados pelos próprios programadores, as consolas dependiam de circuitos concebidos especificamente para produzir imagens.
A Nintendo NES é um bom exemplo. O seu chip gráfico, conhecido como Ricoh 2C02 Picture Processing Unit, não executava código e também não funcionava como uma GPU moderna. Recebia informação sobre os elementos visuais do jogo e transformava-a num sinal de vídeo, construindo a imagem progressivamente à medida que esta era enviada para o televisor.
Esta abordagem tinha limitações bastante rígidas. Um dos exemplos mais conhecidos surge no Super Mario Bros., quando vários inimigos aparecem alinhados na mesma zona horizontal do ecrã. Alguns sprites (elementos gráficos) começam a desaparecer ou a piscar porque o hardware da NES só conseguia processar oito sprites por scanline (linha horizontal do ecrã). Quando esse limite era ultrapassado, o sistema tinha de escolher quais apresentava.

Sprites, tiles e scanlines
O funcionamento da NES estava intimamente ligado aos televisores CRT da época. A imagem tinha uma resolução de 256 por 240 píxeis e era construída a partir de pequenos blocos gráficos de 8 por 8 píxeis.
Cerca de 8 KB de memória continham os padrões dos tiles (blocos gráficos) no cartucho, enquanto aproximadamente 2 KB de RAM na consola eram utilizados para informação como os mapas de fundo. O próprio chip gráfico mantinha ainda dados relativos à posição, forma e características de dezenas de sprites.
À medida que o feixe eletrónico do televisor percorria cada scanline, o hardware determinava quais os tiles e sprites que deveriam ser apresentados naquele ponto. O processo acontecia praticamente em sincronização com o próprio sinal de vídeo, o que limitava a capacidade do processador principal para alterar determinados dados enquanto a imagem estava a ser desenhada.
A NES já representava um avanço considerável face a sistemas anteriores. Na Atari 2600, por exemplo, o processador principal tinha uma participação muito maior na produção da imagem. O Television Interface Adaptor não dispunha de um framebuffer convencional, obrigando o CPU a fornecer continuamente informação enquanto cada linha era desenhada.
Ainda antes disso, a Magnavox Odyssey, lançada em 1972, nem sequer tinha um processador ou memória no sentido convencional. A geração da imagem dependia de lógica eletrónica baseada em componentes discretos.
É também uma das razões pelas quais muitos jogos retro apresentam um aspeto particularmente característico quando são reproduzidos num televisor CRT. O hardware e os jogos foram concebidos tendo esse tipo de ecrã como destino.

A PlayStation 2 dividia o trabalho gráfico
A evolução para gráficos tridimensionais tornou o processamento visual muito mais exigente. Em vez de um único componente tratar de toda a imagem, várias consolas passaram a distribuir as tarefas por diferentes unidades especializadas.
A PlayStation 2 é um exemplo particularmente interessante. Apresentada pela Sony em 1999, utilizava o Emotion Engine como processador principal e tinha um componente gráfico dedicado chamado Graphics Synthesizer.
Na versão final da consola, o Emotion Engine funcionava aproximadamente a 295 MHz, enquanto o Graphics Synthesizer atingia cerca de 147 MHz. Apesar de ser responsável pela produção da imagem, este último não executava todo o trabalho necessário para transformar modelos tridimensionais em gráficos no ecrã.
Grande parte do processamento geométrico era realizada pelo Emotion Engine, nomeadamente através das suas unidades vetoriais. A VU0 podia ser utilizada para diferentes tarefas, enquanto a VU1 assumia sobretudo operações relacionadas com transformações tridimensionais.
Na prática, a geometria era processada antes de chegar ao Graphics Synthesizer. Quando os triângulos eram enviados para este componente, já estavam posicionados no espaço da imagem. O chip podia então concentrar-se em tarefas como preencher os polígonos e aplicar cores e texturas.
Esta divisão de funções não era exclusiva da Sony. Várias consolas da primeira geração de sistemas 3D recorreram a combinações de processadores e chips especializados para repartir o enorme volume de operações necessário para criar imagens tridimensionais.

Quando é que apareceu realmente a GPU?
Existe ainda uma curiosidade histórica relacionada com a terminologia. A Sony chegou a utilizar a designação GPU para o chip gráfico da PlayStation original, desenvolvido pela Toshiba.
No entanto, o conceito de GPU que hoje associamos ao termo é bastante diferente. A grande mudança aconteceu quando os chips gráficos começaram a permitir que os programadores executassem pequenos programas diretamente no hardware para controlar determinadas etapas do processamento gráfico.
A NVIDIA deu um passo importante nesse sentido com a GeForce 3, apresentada em 2001. Esta arquitetura introduziu suporte para shaders programáveis de vértices e píxeis, permitindo aos programadores controlar de forma muito mais flexível a maneira como os gráficos eram processados.
Foi uma mudança fundamental. Em vez de depender exclusivamente de funções definidas pelo fabricante do chip, os jogos podiam começar a utilizar programas específicos para criar efeitos visuais.

A Xbox aproximou as consolas dos PCs
A primeira Xbox, lançada em 2001, marcou uma mudança particularmente importante na arquitetura das consolas.
A Microsoft recorreu a um processador Intel baseado no Pentium III e a um chip gráfico personalizado desenvolvido pela NVIDIA e baseado na tecnologia da GeForce 3. A consola incluía ainda 64 MB de memória partilhada e um disco rígido de 8 GB.
Esta combinação aproximou bastante a Xbox da arquitetura de um computador pessoal. A chegada de hardware gráfico baseado em tecnologias semelhantes às utilizadas nos PCs tornou-se progressivamente mais comum nas consolas seguintes. Ainda assim, a transição não aconteceu de uma só vez.
A Nintendo GameCube, lançada no mesmo período, utilizava um processador PowerPC desenvolvido pela IBM. A Xbox 360 também abandonou a arquitetura Intel e passou a utilizar três núcleos PowerPC da IBM. Na PlayStation 3, o processador Cell foi desenvolvido pela Sony, Toshiba e IBM e tinha igualmente uma base PowerPC.
A Nintendo Wii e a Wii U mantiveram versões evoluídas da arquitetura utilizada pela GameCube.

A arquitetura moderna acabou por convergir
Enquanto os processadores principais continuaram durante algum tempo a seguir caminhos próprios, o hardware gráfico das consolas aproximou-se cada vez mais das arquiteturas utilizadas nos computadores.
A Xbox 360 utilizava um chip gráfico desenvolvido pela ATI, enquanto a PlayStation 3 recorria a uma solução da NVIDIA. A grande transformação seguinte surgiu com a PlayStation 4, lançada em 2013.
A consola passou a utilizar oito núcleos de processamento da AMD e uma arquitetura gráfica derivada das placas Radeon da mesma empresa. A partir daí, a distinção entre o hardware gráfico de uma consola e o de um PC tornou-se ainda menos acentuada.
As consolas atuais são o resultado dessa convergência. A PlayStation 5 e a Xbox Series X utilizam oito núcleos AMD Zen 2 juntamente com gráficos baseados na arquitetura RDNA 2, integrados no mesmo chip.

O percurso desde a NES até às máquinas atuais mostra uma mudança radical na forma como os jogos são desenhados no ecrã. Os primeiros sistemas dependiam de circuitos rígidos, sprites e processamento sincronizado com o sinal de vídeo. Atualmente, os programadores trabalham com GPUs altamente programáveis capazes de executar enormes quantidades de operações em paralelo.
No fundo, a evolução não foi apenas uma questão de aumentar a velocidade. À medida que os jogos se tornaram mais complexos, deixou de ser prático desenvolver de raiz um sistema gráfico completamente diferente para cada consola.
As arquiteturas de GPU já existentes ofereciam uma solução mais flexível e económica, acabando por se tornar a base do hardware gráfico moderno.
Leia também:


















