19/07/2012

Analise de gráficos: FPS

FPS é uma sigla ambígua para os jogadores de videogame, porque ela pode designar duas coisas conhecidas na indústria. A primeira delas é um gênero de jogo, muito conhecido, que são os jogos de tiro em primeira pessoa (first person shooter – daí FPS), o outro, que é o que nos interessa aqui, é uma marcação de velocidade conhecida como “frames per second” (FPS).

A melhor tradução para frame, rigorosamente, é moldura, mas para melhor compreensão, “frames per second” significa “quadros por segundo”. É um conceito, aliás, que está associado não ao videogame, mas à própria indústria cinematográfica e de animação.

De fato, o cinema só existe a partir do momento em que se percebeu que a superposição muito rápida de imagens cria, na verdade, a ilusão de movimento. Um exercício muito conhecido são os chamados “flipbooks”, em que são feitos vários desenhos sucessivos em folhas diferentes de papel que, ao serem folheadas, criam a impressão de movimento, como se vê no seguinte vídeo de um aluno da UERJ:




Entendendo cada um desses desenhos como um quadro, é possível mensurar a velocidade da exibição, computando quantos quadros são “projetados” por segundo.

Os primeiros filmes produzidos na história, mudos, costumavam ser gravados à razões de 16 a 23 FPS, mas no momento em que o som foi introduzido, o padrão usado passou a ser 24FPS, porque era o mais “lento” (e, portanto, barato como se verá) possível para permitir uma adequada sincronização do som.

Portanto, toda vez que se assiste a uma animação da Disney desenhada a mão, é importante lembrar que cada segundo do filme envolvia, no mínimo cerca de 25 quadros desenhados. Para cada segundo. Isso por si só permite ter uma ideia da complexidade da animação, e também do esforço colossal que é sua realização.

É claro que nos dias atuais de computação gráfica isso tudo é muito mais relativo, mas a correlação maior quantidade de quadros x maior quantidade de horas trabalhadas continua existindo, naturalmente.

É interessante notar que os primeiros jogos de tiro em primeira pessoa disponíveis costumavam rodar entre 6 a 10FPS, muito embora nos dias atuais a exigência da esmagadora maioria dos jogadores seja algo entre 30 a 60FPS.

Qual a razão para isso?

Em tese, uma maior quantidade de quadros por segundo significa uma movimentação mais fluida na animação. Aqui a explicação é bastante intuitiva: quanto mais quadros eu tiver indicando alterações dentro de um mesmo espaço de tempo, mais suaves e imperceptíveis serão as alterações de um quadro para o outro.

A diferença não é cerebrina. Observe-se a seguinte comparação entre imagens captadas a 30FPS VS 60FPS, sendo possível notar, de forma bastante perceptível, que mesmo no padrão “aceito” de 30 FPS a menor quantidade de quadros gera menos fluidez e clareza:



Há uma discussão em torno da possibilidade do olho humano discernir velocidades acima de 30FPS, e, decididamente, acima de 60FPS. A discussão é tola por várias razões. Primeiro porque não existe um “limite” específico de frames que o olho humano é capaz de captar, variando de pessoas para pessoa e de diversas outras condições. Ainda que testes com variações de branco e preto indiquem que acima de 60 FPS o olho humano enxerga tudo como cinza, na maioria das vezes, isso não significa que frames superiores a 60 por segundo não sejam importantes.

Porque, na verdade, a mensuração do FPS é complexa. Geralmente, existem várias partículas em movimento em uma determina cena, e cada uma delas possui movimento relativo, podendo numa mesma cena várias partículas estarem a movimentos diferentes do que é apurado no cálculo. Além disso, a taxa (rate) de frames não é constante, mas oscilante, como se verifica no seguinte videos de Deus Ex (observe-se o “contador” de FPS no canto superior esquerdo):




Aumentando-se a quantidade de partículas em movimento ou colisão em uma determinada cena, maior a necessidade de processamento gráfico, e, por conseguinte, ocorrem as naturais quedas de frames, que são vistas na forma de pequenos travamentos ou “gaguejos” da imagem, facilmente perceptíveis para quem estiver assistindo. Naturalmente, com taxas maiores do que 60, mesmo que haja queda abrupta de frames, a tendência é que essa quedas tornem-se mesmo perceptíveis ao jogador do que quando um determinado jogo está correndo no limiar de 30FPS.

O grande desafio da maioria dos jogos no quesito gráficos é sempre o de manter uma qualidade razoável de fluidez de frames, com a menor amplitude possível de variações, sem sacrificar a qualidade gráfica do conteúdo. Na prática, porém, a taxa de frames é sempre a moeda de troca da maior parte das melhorias gráficas. Como regra, uma maior qualidade gráfica, como um aprimoramente das texturas, já examinado no capítulo anterior, cobra seu preço sobre os frames por segundo que o jogo entrega ao jogador. Nos consoles, o jogador fica muito na mão das escolhas que os programadores resolveram fazer nesse quesito, já no PC, os jogadores possuem mais liberdade para decidir o quanto estão dispostos a sacrificar de quadros por segundo por uma melhoria na qualidade gráfica de seu jogo.

Abraços e até o próximo post.


Nenhum comentário: