30 ou 60 fps, a eterna discussão

A realidade é que ambos os modos tem vantagens e desvantagens, sendo que nenhum deles substituiu o outro.

30 ou 60 fps num jogo não é uma mera questão de se implementar. Não é forçosamente porque há má programação que um jogo corre a 30 fps e não a 60 fps, e implementar 60 fps traz vantagens, mas tambem sacrifícios.

Basicamente isto é simples de se compreender. E podemos pegar num exemplo do mundo real para isso!

Imaginem que vocês verificam 30 testes (de alunos numa escola) no espaço de 1 dia. Analisam todas as questões, e dedicam todo o vosso tempo a cuidadosamente verificar as respostas.

E subitamente alguem vos diz que terão de passar a verificar 60 testes!



Como é fácil de se perceber, algo vai ter de ceder. Se vocês só conseguiam 30 e subitamente vão necessitar de 60, não será possível dedicar o mesmo tempo a cada teste, e algo terá de ser abdicado.

Basicamente a qualidade do que está a ser feito… vai cair!

Com os jogos é a mesma coisa. Ter 30 fotogramas implica poder dedicar 33,3 ms em média a cada fotogramas. Mas aumentar isso para 60 implica cortar esse tempo para 16.6 ms. Dado que o processamento ocorre sempre à mesma velocidade, a realidade aqui é matemática… O jogo apenas vai poder processar metade do que processava antes.

Naturalmente 60 fps tem muitas vantagens. Há maior fluidez, melhor resposta e menos input lag… mas isso é conseguido à custa da perda de fidelidade visual. Basicamente ao não se poder processar o mesmo, os efeitos necessitam ou de ser simplificados, ou a resolução tem de cair. Basicamente terão de haver cortes de forma a que o processador caia dentro do novo tempo de processamento disponível.

Um  jogo que criou muita confusão a muita gente foi o novo Horizon: Forbiden west, onde agora, com os últimos patches, o jogo consegue a 60 fps uma qualidade visual cuja diferença de qualidade face ao visualizado a 30 fps é praticamente impercetível, quase dando a entender que, com dedicação é possível obter-se a 60 fps o mesmo que a 30 fps.

A questão é que isso não é assim! Basicamente este é um jogo Cross Gen, e a falta de dedicação que houve nos 60 fps, que criou todos aqueles problemas visuais e que levaram a este patch que permite agora a 60 fps basicamente igualar a qualidade dos 30 fps, é a mesma falta de dedicação ainda existe nos 30 fps.



Basicamente o que quero dizer é que, caso o modo 30 fps tivesse uma dedicação semelhante à que foi agora colocada no modo 60 fps, o fosso voltava a disparar. E isso porque não há volta a dar-se. E 33,3 ms será sempre o dobro de 16.6 ms!

Como isso não aconteceu, e apenas o modo 60 fps foi intervencionado, tendo agora uma programação mais dedicada e provavelmente específica da PS5, as suas performances subiram face ao que era antes código cross gen e igualmente adaptado à PS4, este modo aproximou-se da qualidade visual dos 30 fps.

Mas é como se referiu… caso o modo 30 fps fosse alvo de igual intervenção, a qualidade gráfica poderia subir ainda mais, voltando a criar o fosso visual entre os dois modos.

Basicamente a escolha entre os 30 e os 60 fps são uma escolha do programador. Os 30 fps são utilizados para fidelidade visual, e os 60 para maior fluidez/performance. Quando se misturam os dois modos, basicamente os programadores escolhem o que cortar e onde cortar, de forma a obter a performance.

Naturalmente isso não implica que um jogo a 60 fps seja visualmente mau. Pelo contrário! Há muitos programadores que conseguem espremer dos 16.6 ms muito mais do que outros conseguem de 33 ms. A qualidade do código é sempre relevante. Mas dentro de uma mesma equipa, 33.3 ms renderão sempre o dobro de 16.6 ms.



Quando 33.3 ms não são o dobro de 16.6 ms

Se matematicamente 33.3 ms são sempre o dobro de 16.6 ms, o que implica um tempo de fotograma duplo, a realidade é que nem todos os efeitos aplicados a uma cena ocupam o mesmo tempo de processamento.

Um bom exemplo é o Ray Tracing… Que ocupa imenso tempo de processamento. Basicamente apenas o corte deste efeito pode permitir a passagem de 30 para 60 fps, fazendo-se o mesmo que o RT fazia por rasterização, com um efeito visual em tudo semelhante, e que pode justificar o corte.

Mas esse não é o único exemplo. Se verificarmos a evolução do grafismo vemos que os efeitos de pós processamento são cada vez mais pesados. Basicamente um jogo atual pouco diferente é de um jogo de à alguns anos atrás, mas no entanto, o efeito de foto realismo é superior. E isso deve-se a uma série de tratamentos que são feitos à imagem, às texturas, e outros. Basicamente a criação da geometria e texturação de objectos, por ser um processo antigo e muito desenvolvido, é bastante rápido de ser feito. O pós processamento, a resolução e alguns efeitos são depois bastante pesados, e gastam o resto do processamento disponível dos novos GPUs.

O que isto implica é que apenas o mexer na qualidade destes parâmetros pode permitir ganhar a performance suficiente para se alcançar os 60 fps. E isso mais fácil se torna se o jogo já trabalha a 40 ou 50 fps, mas está limitado a 30 fps, por não alcançar os 60.

Nestes casos não teremos de cortar metade para atingir o dobro. E este é um caso até bastante comum.



Uma troca de um efeito de luz HDR por um Bloom pode poupar processamento, mas visualmente é um corte com um impacto visual reduzido. Basicamente uma redução na qualidade do efeito, que poupa poder de processamento sem o tirar.

E o mesmo pode ser realizado com certos shaders que passam a calcular o mesmo, mas com menos precisão, mantendo o efeito, mas sem a mesma qualidade.

Onde pretendo chegar é que não é forçosamente necessário cortar-se radicalmente ao que temos no ecrã para se aumentar os fotogramas. E que a mera redução da qualidade pode ser suficiente! E isso é algo que temos visto recentemente em muitos e muitos jogos que oferecem agora modos 30 e 60 fps ou 60 e 120 fps.

A magia dos 30 fps

A realidade é que os programadores não escolhem só os 30 fps por questões graficas. Muitas vezes um jogo é mantido a 30 fps por uma questão de se manter o chamado “efeito cinemático”, ou “a magia do cinema”.

Para que percebam o que é isso, nada como um exemplo.



No cinema os filmes são passados a 24 fps, que vamos comparar aos nossos 30 fps, uma vez que 24 fps não é algo muito usado nos videojogos, até pelo efeito de “tearing” que provoca.
E vamos ver então um filme a essas 24 fps, e depois ao dobro, ou 48 fps, que no caso dos videojogos, seriam os 60 fps.

Eis então os clips:

30 fps

48 fps



Apesar de o video a 48 fps poder parecer mais acelerado, na realidade não o está… o que acontece é que a movimentação ao ser mais fluida, capta movimentos intermédios que não existem a 24 fps. E isso cria um efeito algo… estranho!

Basicamente no cinema isso tem um nome, é o “Soap Opera Effect”, ou “Efeito novela”. E o nome usa-se porque as Soap Operas ou Novelas Americanas eram filmados com mais fps já com o intuito de se obter um efeito mais “cómico”.

Claro que haverá quem até goste mais do efeito dos 48 fps, especialmente numa altura em que os nossos telemóveis filmam a essa cadência, ou até mais, mas o certo é que ele está longe de ser o que se chama de efeito cinemático. E esse efeito é muitas vezes procurado por equipas em que o seu jogo conta uma história, e como tal se enquadra como uma obra que pretende misturar o cinema e os videojogos.

E o cinema poderia já ter-se adaptado a mais fotogramas. No entanto, porque o efeito é realmente interessante, isso nunca aconteceu, e a cadencia de fps é mantida.



A vantagem dos 60 fps

Mais fps dá uma maior sensação de fluidez… e uma menor sensação de atraso na resposta aos comandos.

E isso percebe-se facilmente vendo o efeito no ecrã de diferentes cadencias de fotogramas.

Repare-se como os 30 fps parecem andar mais devagar. Na realidade as letras chegam todas aos cantos ao mesmo tempo, sendo que a diferença está apenas na representação das mesmas nos espaços intermédios. Mas este exemplo é bom porque dá a sensação que quanto maiores os fotogramas, mais depressa as letras se movem.

É esta ilusão optica, que é igualmente percecionada no tempo de resposta de um comando, que torna os 60 fps o mais desejável para jogos.



Melhor fluidez, melhor resposta, e uma ilusão de movimento mais rápido.



3 Comentários
Antigos
Recentes
Inline Feedbacks
Ver todos os comentários
CarlosP
CarlosP
24 de Julho de 2022 8:20

Excelente Mário, muito explícito.
Neste momento estou novamente a jogar God of War, que foi na minha opinião o melhor jogo que joguei na ps4 e um dos melhores que joguei até hoje se não o melhor. Estou a jogar no modo performance (4k dinâmico a 60fps), realmente a 60 fps tudo parece mais intuitivo, rápido, menos cansativo. Já em horizon, não sei se é porque me habituei, mas alterei dos 2 modos e simplesmente não consegui de deixar o modo performance. Ainda não experimentei o tal modo intermédio dos 40fps, mas acredito que seja uma solução bastante interessante.

Alexandre Oliveira
Alexandre Oliveira
25 de Julho de 2022 9:34

No cinema só embirro com com 24fps nas cenas de ação, acaba por se notar muito o arrasto.(noto logo a diferença quando vejo filmes de ação com mais fps)

Agora em filmes “lentos” ou que não tenham cenas de ação desenfreadas 24fps é muito bom.
Excelente artigo.

error: Conteúdo protegido