Estou morrendo de vontade de gerar quadros do Steam Deck – então por que isso é tão decepcionante?
Na semana passada, minhas orações foram respondidas. Tenho esperado pacientemente que a geração de quadros apareça amplamente no Steam Deck . O ROG Ally e o ROG Ally X possuem isso por meio do Fluid Motion Frames (AFMF) da AMD, e os computadores de mão Windows de forma mais ampla podem usar o Lossless Scaling . Mas o Steam Deck não pode usar geração de quadros, pelo menos não em jogos que não vêm com suporte nativo ao FSR 3 – e não há muitos deles que funcionem bem no Steam Deck.
Na semana passada, o mod Decky-Framegen foi oficialmente lançado em beta no GitHub. É basicamente um swapper de DLL, permitindo que você use FSR 3 Frame Generation em jogos que suportam apenas DLSS Frame Generation. Se você já usou o Decky Loader no Steam Deck antes, o processo de instalação é simples. Basta arrastar o plugin para a pasta Plugins no Steam Deck – localizada em /home/deck/homebrew/plugins – voltar ao modo de jogo e aplicar o plugin a qualquer jogo da lista. Ele adicionará um comando de inicialização aos jogos que você selecionar e você estará pronto para as corridas.
Em um jogo com geração de quadros DLSS, de repente você terá a capacidade não apenas de selecionar DLSS, mas também de ativar a geração de quadros. Ainda é apenas FSR 3, mas é aplicado por meio de suporte DLSS nativo em um jogo.
Parece uma solução perfeita e foi o que pensei. Imediatamente coloquei na fila os downloads de Silent Hill 2, Final Fantasy XVI e Cyberpunk 2077, me perguntando que tipo de desempenho eu poderia obter nesses jogos que, sem geração de frames, rodam muito mal no Steam Deck. Mas eu estava prestes a ter um rude despertar. Decky-Framegen funciona e não vou desinstalá-lo do meu Steam Deck. Mas, na verdade, usar o mod me forçou a redefinir minhas expectativas.
Compensando hardware perdido
Em minha recente análise do DLSS 4 , escrevi o seguinte: “O DLSS está no seu melhor quando leva ao próximo nível de qualidade visual; é pior quando compensa hardware que não consegue atingir o alvo.” Esse sentimento é o que impulsiona a conversa aqui sobre a geração de frames no Steam Deck. Ele não permite que você jogue jogos que de outra forma não poderia jogar. Isso apenas faz com que os jogos que você já pode jogar pareçam mais suaves.
Existem alguns problemas aqui. Primeiro, e mais óbvio, é a taxa de quadros base. A geração de quadros funciona melhor quando você pode alimentá-la com uma taxa de quadros alta e consistente.
Vamos lidar primeiro com a parte alta. O FSR 3 usa interpolação de quadros, onde o sistema renderiza dois quadros e encontra a diferença entre eles para gerar um quadro intermediário. Quanto maior a taxa de quadros, menor será a diferença entre os dois quadros e mais fácil será para o algoritmo de geração de quadros descobrir o que deve acontecer entre eles. Quanto mais baixa for a taxa de quadros, maior será a diferença entre dois quadros e mais difícil será para o algoritmo de geração de quadros descobrir o que deve acontecer entre eles.
A latência também se torna um problema quando a taxa de quadros não é alta o suficiente. Da forma como o FSR 3 funciona, o sistema precisa constantemente manter um quadro extra em buffer. Isso adiciona latência, e essa latência é agravada quando você já tem uma taxa de quadros que parece não responder. O mod Decky-Framegen pode ser capaz de fazer com que 20 quadros por segundo (fps) pareçam 40 fps, mas jogar parece que você está rodando a 15 fps. Essa é a ideia, pelo menos.
Esses são problemas que afetam qualquer ferramenta de geração de quadros, desde Lossless Scaling até o novo DLSS 4 Multi-Frame Generation da Nvidia. Eles são mais proeminentes no Steam Deck – ou em qualquer dispositivo portátil – devido à sobrecarga de baixo desempenho, mas ainda são problemas, independentemente da plataforma em que você joga. Porém, há um problema específico dos PCs portáteis para jogos e é isso que realmente mata a experiência.
O diabinho da geração de frames
Eu disse que a geração de quadros deseja uma taxa de quadros alta e consistente, e a consistência é a razão pela qual a geração de quadros não funciona bem no Steam Deck. O único jogo que fiquei mais animado para jogar depois de aprender sobre Decky-Framegen foi Final Fantasy XVI. Este jogo não é compatível com o Steam Deck devido ao quão exigente é, mas dediquei 90 horas nele quando foi lançado no PS5 e estou procurando uma desculpa para dedicar mais 90 horas. Baixei a demo com Decky-Framegen pronto e a experiência foi terrível.
A taxa de quadros estava consistentemente em movimento. As animações nunca eram suaves e parecia que o jogo rodava em câmera lenta quando o desempenho caía. Achei que fosse apenas Final Fantasy XVI, mas não era. O mesmo problema aconteceu em Silent Hill 2. Desativar a geração de quadros tornou o jogo menos suave – a ponto de ser impossível de jogar – mas ainda parecia uma experiência melhor do que quando usei a geração de quadros. E foi então que me deparei com algumas verdades infelizes sobre o uso da geração de quadros em um computador de mão.
Há duas razões pelas quais a consistência faz uma grande diferença. A primeira é a sensação do jogo. Quando a taxa de quadros está em fluxo, o ritmo dos quadros fica completamente desligado. Entre dois quadros pode haver um intervalo de 25 milissegundos, mas entre os dois quadros seguintes há um intervalo de 35ms. Quando o tempo do quadro está constantemente em movimento assim, é difícil posicionar o quadro gerado no lugar certo. O movimento parece estar constantemente gaguejando.
A outra razão diz respeito à sobrecarga exigida pela geração de quadros. É fácil esquecer que a geração de quadros reduz efetivamente o seu desempenho. O algoritmo precisa ser executado, portanto, em um ambiente de desempenho restrito como o Steam Deck, você obterá menos desempenho com a geração de quadros ativada ou desativada. A ideia é que os quadros extras gerados possam compensar a perda de desempenho, essencialmente dobrando a taxa de quadros.
Essa sobrecarga leva a uma situação que você pode ver acima no gráfico de tempo de quadro. Para que a geração de quadros funcione, o sistema precisa renderizar um segundo quadro antes mesmo de exibir o primeiro. Quando sua taxa de quadros muda constantemente, isso leva a uma bola de neve de perda de desempenho quando a geração de quadros não consegue acompanhar. No momento em que o segundo quadro renderizado (terceiro quadro total) é mostrado, o algoritmo de geração de quadros ainda está funcionando no próximo lote, forçando você a esperar para ver outro quadro. O resultado é essa gagueira constante a cada bloco de três quadros.
A geração de quadros atinge o seu melhor quando leva ao próximo nível de qualidade visual. O pior é quando se compensa um hardware que não consegue atingir o alvo.
Meu sonho de que a geração de quadros no Steam Deck desbloquearia algum novo nível de desempenho não era nada mais do que isso – um sonho. Mas ainda tenho o mod Decky-Framegen instalado e, se você possui um Steam Deck, sugiro que instale-o também.
O que Decky-Framegen faz muito bem é fazer com que os jogos que rodam suavemente pareçam ainda mais suaves. Por exemplo, eu uso o ROG Ally X com Bazzite instalado como meu principal portátil para jogos, e esse dispositivo vem com uma tela de 120 Hz. Decky-Framegen é incrível para levar jogos que normalmente rodam de 60 fps consistentes até 120 fps consistentes. É como mágica.
É importante manter suas expectativas sob controle. O mod Decky-Framegen é ótimo, mas seus casos de uso são um pouco mais limitados do que podem parecer à primeira vista.