Games clássicos como Super Mario Bros. e Sonic the Hedgehog têm uma característica em comum: a latência elevada. Ou seja, eles costumam demorar algum tempo para exibir na tela os comandos enviados por meio do controle.
O delay é quase imperceptível nos consoles originais, porém fica mais evidente em emuladores. Isso acontece por diversas razões – das características de mouse e teclado até o processamento do vídeo. Por esse motivo, usuários mais assíduos vêm buscando formas de reduzi-lo.
Quem encontrou uma resposta foram os desenvolvedores da RetroArch, uma famosa interface para emular jogos clássicos. Eles conseguiram fazer com que a latência dos games fosse ainda menor do que a existente nos consoles originais.
Consoles como o NES processam o input do usuário ao mesmo tempo em que o próximo quadro está sendo renderizado. Com isso, é necessário esperar esse quadro ser finalizado para a resposta a uma ação ser exibida na tela.
Em alguns casos, a diferença entre o input e a ação na tela pode chegar a quatro frames. O vídeo abaixo dá um exemplo da diferença entre o NES e o emulador que recebeu a melhoria:
Afinal, qual foi a mudança realizada? Para melhorar a experiência, os responsáveis pelo RetroArch “aceleraram” alguns frames inúteis. Assim, os quadros que não mostram nenhuma movimentação passam despercebidos. Em seguida, o quadro em que realmente há alguma diferença é mostrado.
Para manter a experiência do jogo original, o emulador também faz ajustes no áudio. Quando o botão é apertado, a plataforma salva os efeitos de áudio que deveriam aparecer no primeiro frame, e só os carrega no quadro em que há a movimentação.
A mudança exige que os computadores tenham um trabalho maior de processamento. No entanto, ela não chega a ser um grande problema para máquinas mais recentes.
Batizada de LAGFIX, a solução está sendo desenvolvida desde março e deverá continuar recebendo melhorias. A partir de agora, o trabalho também envolve a análise de uma lista de jogos clássicos, para identificar a latência em cada título.
Com informações: Ars Technica.