2020-09-17 22:21:21 -0300 2020-09-17 22:21:21 -0300
riki_samejima mastershadow

A colisão usada em Contra

Anos atrás, o programador Allan Blomquist produziu uma matéria falando de pontos-chave do código do Contra de NES. Já fazia um tempão que tinha guardado o link dessa matéria, mas ainda não tinha analisado ela muito bem, só ontem é que fui ver certinho. O sistema de colisão usado nesse game foi uma das revelações mais interessantes.

O hitbox retangular fica nos inimigos e nos projéteis, não no protagonista. O que tem no protagonista é só um ponto. O acerto é detectado, obviamente, quando o hitbox dos inimigos sobrepõe o ponto do protagonista. Notem que o hitbox muda de acordo com o estado do protagonista: de pé, agachado ou pulando.

Deem uma olhada em outras curiosidades na matéria:

http://tomorrowcorporation.com/posts/retro-game-in...

Contra

Platform: NES
3226 Players
36 Check-ins

30
  • Micro picture
    tiagotrigger · 6 months ago · 2 pontos

    Eles não falaram os motivos no texto, mas imagino que um dos motivos (o principal, provavelmente) é que a verificação de colisão entre um ponto e uma área é mais rápida do que duas áreas.

    Verificar colisão entre um ponto e círculo é o mais rápido de todos (ve se a distância do ponto é menor ou igual o raio do circulo), mas no NES usavam mais retângulos mesmo (que é mais rápido do que ver colisão entre dois retangulos). Nos computadores de hoje a diferença é imperceptivel, mas nos antigos era importante economizar recursos.

    E usar o hitbox do jogador posicionado no inimigo também economiza recursos pois se fosse o contrário pra cada inimigo precisaria ter 3 colisões diferentes dependendo do estado do jogador (em pé, deitado ou pulando). Mas, assim todos os inimigos usam as mesmas colisões do jogador + a colisão do inimigo.

    9 replies
  • Micro picture
    mastershadow · 6 months ago · 2 pontos

    Olha só se não é o Rick Resurgindo das cinzas com detalhes técnicos de games do NES kkkkk!

    1 reply
Keep reading → Collapse ←
Loading...