Se você jogou Crash Bandicoot no PlayStation em 1996, percebeu algo toda vez que carregava um nível: você sempre corria na mesma direção. Para frente, em direção à tela. Caminhos lineares por templos na selva, ruínas antigas e corredores de fábrica, sempre seguindo em uma única direção, sem espaço para voltar ou explorar para os lados. Esse design de corredor se tornou uma marca registrada de Crash. E também não teve quase nada a ver com intenção criativa.
A verdadeira razão era um problema matemático. O PS1 tinha 2 megabytes de RAM do sistema. Um único nível de Crash Bandicoot continha de 32 a 40 megabytes de dados.
Isso não é um erro de digitação. Um jogo rodando em hardware com 2MB de memória de trabalho precisava renderizar ambientes que eram de 15 a 20 vezes maiores. A única questão era como.
O Problema em Números
| O quê | Tamanho | |---| | RAM do sistema do PS1 | 2 MB (2.097.152 bytes) | | Nível típico de Crash Bandicoot | 32 a 40 MB | | Dados carregados a qualquer momento | Menos de 2 MB | | Bytes restantes na memória no lançamento | 4 |
Vale a pena refletir um pouco sobre a última linha. Quando a Naughty Dog finalizou Crash Bandicoot e prensou o disco para lançamento, o jogo cabia em seus 2MB de memória com exatamente 4 bytes de sobra. Não 4 kilobytes. Não 4 centenas de bytes. Quatro bytes, de um total de 2.097.152.
O Motor de Streaming de Andy Gavin
Crash Bandicoot tinha dois programadores: Andy Gavin e Jason Rubin. Gavin cuidou do motor, e a situação da memória o obrigou a inventar algo que o PS1 nunca foi projetado para suportar.
