Anti-aliasing: o que é e para que serve

7 min de leitura
Imagem de: Anti-aliasing: o que é e para que serve
Avatar do autor

Quando se fala em gráficos ruins, um dos aspectos mais observados (e criticados) são as famosas bordas serrilhadas, que enfeiam toda a imagem e passam a impressão de um game pouco polido. O efeito é resultado de pouco (ou mau) uso do anti-aliasing, técnica que, basicamente, serve para suavizar bordas gráficas e melhorar a qualidade das imagens como um todo.

As imagens às quais assistimos são formadas por diversos pontos, os chamados pixels, que se acendem e exibem cores de acordo com os impulsos elétricos recebidos por eles. Estes elementos podem ser vistos a olho nu, basta se aproximar o bastante da tela para observá-los, como na imagem abaixo.


Fonte da imagem: WikipediaLinhas retas são exibidas perfeitamente. O problema aparece quando as imagens possuem bordas diagonais. Como as telas possuem uma contagem de pixels menor que o máximo enxergado pelo olho humano, os serrilhados aparecem de forma perceptível, principalmente em áreas nas quais o contraste é muito alto.

Em tempo, apesar de, neste artigo, falarmos especificamente do uso do anti-aliasing em games, a tecnologia também é empregada em toda sorte de trabalhos visuais. Programas de editoração e design eletrônico, como o 3D Max ou o AutoCAD também fazem uso do recurso durante a renderização. A tecnologia é empregada até mesmo em impressões de imagens, mas de forma microscópica.

Lixando os serrilhados Em busca de melhor qualidadeO efeito, na verdade, não acaba com o problema. O anti-aliasing nada mais é do que uma ilusão visual, que faz com que os gráficos pareçam polidos aos olhos do espectador. Basicamente, a função trabalha com a intensidade das cores das bordas de maneira sutil, gerando um efeito degradê que, quando observado pelo olho humano, passa a impressão de linhas diagonais perfeitas.


Fonte:
Panther Products
A imagem acima exibe de forma básica o funcionamento da tecnologia. A letra à esquerda não conta com nenhum tipo de anti-aliasing ativado, enquanto a da direita está com o efeito em pleno funcionamento, e aparece de forma mais suave na tela. Na ampliação, é possível observar a alteração na tonalidade da cor das extremidades.

Existem inúmeras técnicas de anti-aliasing, mas o Multisampling e o Supersampling são os dois principais tipos. Apesar de possuírem o mesmo objetivo, os métodos possuem diferenças no processamento empregado na suavização e no resultado final.

Obtendo amostras E criando a ilusãoA suavização da tecnologia de anti-aliasing é obtida por meio de um conjunto de amostras de cores, que são calculadas automaticamente pela placa gráfica. Este processo ocorre simultaneamente à geração das imagens tridimensionais, e é transparente ao jogador.

Basicamente, o sistema faz uma leitura dos tons principais dos pixels que compõem as bordas, e acrescenta pontos de cor intermediária entre eles, criando o efeito degradê visto na imagem acima, com as letras. Quanto maior o número de amostras obtidas, maior a suavização das imagens e, consequentemente, melhores os gráficos exibidos na tela.

A aplicação do efeito, porém, nem sempre é fixa, e segue um sistema numérico que indica o número de amostras que serão obtidas para cada pixel na diagonal. Quanto maior o índice, melhor a suavização, pois mais tons intermediários serão gerados para trabalhar ao lado do ponto de cor principal.

Fonte da imagem: Eric Chan / MIT
Na imagem acima, é possível observar uma comparação entre três níveis de anti-aliasing. A primeira é a original, a segunda apresenta o efeito em 4x, e a terceira em 6x. Já este site faz uma simulação destes níveis em “tempo real”, e mostra até que ponto é possível suavizar uma imagem tridimensional por meio da tecnologia.

Beleza X Desempenho Buscando o equilíbrioO anti-aliasing exige cálculos extras e requer processamento maior do que o utilizado para simplesmente exibir os objetos da tela. Como nem tudo é perfeito, o resultado normalmente é uma queda na contagem de quadros por segundo e até mesmo uma lentidão generalizada na máquina que está rodando o game.

Por este motivo, placas de vídeo e jogos para computador contam com opções específicas para ativação dos efeitos de alisamento. Desta forma, o usuário pode definir suas preferências de acordo com a potência da máquina, garantindo uma jogabilidade perfeita e os melhores gráficos possíveis para o equipamento que está sendo utilizado.

Em placas de vídeo GeForce, a ativação do efeito é simplificada, de forma a ser entendida até mesmo pelo usuário mais leigo. Basta clicar com o botão direito em um ponto vazio da área de trabalho e selecionar a opção "NVIDIA Control Panel".

A primeira opção exibida na tela, “Adjust image settings with preview” já se refere ao sistema de anti-aliasing. Por padrão, o sistema estará configurado na opção recomendada, “Let the 3D application decide”. Desta forma, os jogos executados decidirão, de acordo com as especificações da máquina, qual o melhor nível de suavização a ser aplicado, sem comprometer o desempenho.

Para personalizar a utilização do recurso, o usuário pode utilizar a barra localizada na terceira opção, e definir um limiar entre desempenho e qualidade. Caso prefira, é possível configurar ainda mais a utilização do recurso na opção “Take me there”. Neste menu, também é possível montar configurações específicas para cada jogo executado pela máquina.

Placas da ATI também apresentam a configuração do sistema de maneira semelhante, mas possuem configurações avançadas de forma mais intuitiva que o painel de controle da NVIDIA. Para alterar a utilização do anti-aliasing, clique com o botão direito em qualquer lugar da área de trabalho e acesse o “Catalyst Control Center”.

Na tela de boas-vindas, clique no menu “Graphics” e selecione a opção “3D”. As opções para configuração do anti-aliasing estão localizadas no menu superior, nos botões “Standard”, “AA” e “AAMode”. Todas contam com amostras gráficas que mostram em tempo real o efeito resultante das alterações na barra. Também é possível fazer com que os games executados selecionem a melhor utilização do efeito de acordo com a potência da máquina.

A primeira aba altera as configurações gerais, e pede para que o usuário selecione a utilização do recurso para privilegiar o desempenho do computador ou a qualidade gráfica. A segunda, “AA”, altera a quantidade de amostras de cor que serão processadas durante a aplicação do anti-aliasing. Já na terceira opção, é possível selecionar o tipo de efeito que será aplicado.

Este tipo de alteração também pode ser realizada no menu dos jogos. Na maioria das vezes, os títulos não apresentam imagens para exibição das modificações em tempo real, mas permitem que o usuário trabalhe não apenas com os efeitos de anti-aliasing como com diversos outros detalhes gráficos do game.

E nos consoles? Como funciona?Apesar de não apresentarem configurações para alteração da potência do efeito, os consoles de mesa também contam com sistemas de anti-aliasing. Porém, neste caso, a utilização do recurso é fixada pelo desenvolvedor e não pode ser alterada pelo usuário. O uso do sistema é pensado de acordo com as capacidades do aparelho, de forma a não causar diminuições na contagem de quadros por segundo ou outros problemas de desempenho.

Apesar de apresentarem hardwares semelhantes, o PlayStation 3 e o Xbox 360 apresentam diferenças na utilização do sistema de anti-aliasing, principalmente devido à alocação de memória RAM e à arquitetura dos dois consoles. A utilização dos efeitos também é relacionada às peculiaridades de desenvolvimento de cada um dos aparelhos.

O Xbox 360 conta com uma placa da ATI exclusiva dedicada apenas ao processamento gráfico. Já o PlayStation 3 conta com um componente da NVIDIA, equivalente a uma GeForce 7800. Ambos os consoles possuem 512 MB de memória RAM. No aparelho da Microsoft, porém, todo este potencial é dividido entre processamento de dados e gráficos de acordo com as necessidades de cada setor. O video game da Sony conta com a mesma quantidade de memória, mas divide-a de forma igual entre os dois, podendo estrangular o trabalho de renderização.

A recomendação da Sony, porém, era que as desenvolvedoras utilizassem o processador central Cell para todo o trabalho de processamento dos jogos. As empresas, por sua vez, consideravam o trabalho com o novo chip muito complicado, daí a inclusão de uma placa gráfica extra (e inferior) como medida paliativa para facilitar a criação de games para o console.

Fonte da imagem: Eurogamer

Apesar da utilização de técnicas ser muito variada, o Multisample é o tipo mais comum de anti-aliasing utilizado no desenvolvimento para os consoles. O PlayStation 3 conta com uma tecnologia chamada “quincunx AA”, desenvolvida com exclusividade pela própria NVIDIA. O sistema é capaz de produzir uma suavização superior utilizando a mesma quantidade de recursos da tecnologia tradicional por meio de uma diminuição na nitidez das cenas.

Em games que contam com gráficos lisos e com poucos detalhes, a diferença é ínfima. Caso a cena apresente diversas texturas, profundidade e muitos elementos interagindo ao mesmo tempo, o resultado é uma imagem embaçada no PS3, enquanto o Xbox 360 exibe cenas muito mais detalhadas e coloridas, mesmo que com um pouco de serrilhado. A imagem acima, do game Assassin's Creed, exibe a diferença da mesma imagem nos dois consoles.

Fonte da imagem: BitmobQuando desenvolvedores decidem seguir a cartilha da Sony, porém, o resultado é impressionante. Basta observar qualquer imagem de jogos como Uncharted ou até mesmo os trabalhos de conversão gráfica feitos pela Sony ao relançar títulos do PlayStation 2 para perceber o potencial gráfico dos chips Cell, principalmente em relação ao anti-aliasing. O grande destaque, no campo das conversões, vai para God of War Collection.

Veja também: