O anti-aliasing, FXAA, TXAA,SMAA, MSAA, Multisampling, filtro anisotrópico são termos amplamente utilizados no mundo dos jogos e gráficos computacionais. Mas o que exatamente eles significam? Nesta postagem, exploraremos os conceitos relacionados ao aliasing, anti-aliasing e todas as siglas relacionadas e apresentaremos algumas técnicas populares usadas para melhorar a qualidade visual em jogos.
O que é e para que serve o Anti-Aliasing?
O anti-aliasing (antisserrilhamento) é uma técnica utilizada em gráficos computacionais para melhorar a qualidade das imagens exibidas. Ele tem como finalidade suavizar as bordas serrilhadas, também conhecidas como aliasing ou “jaggies”, que podem aparecer nos objetos renderizados.
Essa técnica funciona através da interpolação de pixels adjacentes, criando um efeito de suavização nas bordas dos objetos. Isso resulta em uma imagem mais nítida e com menos artefatos visuais, proporcionando uma experiência visual mais agradável ao usuário.
O que são “jaggies” e por que eles acontecem?
Os “jaggies” ou aliasing são bordas serrilhadas que podem ser observadas em imagens ou objetos 3D. Essas bordas irregulares ocorrem devido à falta de suavização das arestas, resultando em uma aparência pixelada e pouco realista.
![Aliasing e Anti-aliasing](http://doutorvideo.com/wp-content/uploads/2023/09/Anti-aliasing.webp)
Existem várias causas para o surgimento dos “jaggies”. Uma delas é a limitação da resolução das imagens ou do objeto 3D, o que faz com que os pixels sejam mais visíveis. Além disso, quando as linhas retas ou curvas não são representadas com suavidade, elas tendem a apresentar um aspecto denteado.
Como funciona o Anti-Aliasing na prática?
Para ativar a função, o sistema preenche os espaços vazios entre as bordas dos pixels agrupados adicionando mais pixels. O Anti-Aliasing ajusta a cor desses pixels extras para suavizar o aspecto serrilhado ou em forma de escada das linhas.
Embora o filtro seja útil para melhorar a aparência visual das imagens, ele não é perfeito e não eliminará completamente o serrilhado. Se você estiver usando um monitor de alta resolução, esta tecnologia ajudará bastante.
Tipos de métodos de anti-aliasing
Os tipos de métodos de anti-aliasing são anti-aliasing espacial e anti-aliasing pós-processamento. Confira mais detalhes sobre cada tipo:
Anti-aliasing espacial
O anti-aliasing espacial funciona da seguinte forma: uma imagem de baixa resolução é transformada em alta resolução, são retiradas amostras de cores dos novos pixels e, depois, a imagem é reduzida para a resolução original com as novas cores. Isso faz com que os pixels se misturem melhor e os jaggies fiquem menos visíveis. Confira os tipos de anti-aliasing espacial:
O Anti-aliasing de superamostragem (SSAA)
O anti-aliasing de superamostragem (SSAA) é um método eficaz para melhorar a qualidade das imagens. Também conhecido como “anti-aliasing de cena completa” (FSAA), o SSAA suaviza as bordas das imagens, tornando-as mais realistas.
No entanto, esse método tem algumas desvantagens. Por exemplo, imagens com muitas linhas horizontais ou verticais podem ser afetadas negativamente, pois essas linhas parecerão suaves demais. Além disso, o SSAA requer um alto poder de processamento, o que pode ser um desafio para jogos em tempo real. Por esse motivo, o SSAA não é mais amplamente utilizado em jogos atualmente.
Anti-aliasing Multi Amostra (MSAA na sua sigla em inglês)
Quando uma placa de vídeo está criando uma imagem na tela, ela diferencia entre dois elementos diferentes: um polígono e uma textura. Primeiro a placa de vídeo desenha o polígono, em seguida, a placa de vídeo preenche o polígono com uma textura.
No Anti-aliasing Multi Amostra (MSAA), apenas as bordas dos polígonos são suavizadas – o MSAA não suaviza as texturas. Isso diminui um pouco o poder de processamento. O MSAA é um método popular de anti-aliasing entre os jogadores de PC. É eficiente, mas não é perfeito, ainda é possível obter texturas com pixels visíveis.
CSAA e EQAA
A NVIDIA e a AMD, desenvolveram um novo tipo de anti-aliasing espacial. A NVIDIA desenvolveu o CSAA (anti-aliasing de amostragem de cobertura ou Coverage Sampling Anti-Aliasing em inglês) e a AMD desenvolveu o EQAA (anti-aliasing de qualidade aprimorada ou Enhanced Quality Anti-Aliasing em inglês).
Os dois métodos analisam e processam apenas as partes dos polígonos que provavelmente irão apresentar o serrilhamento, reduzindo assim a potência necessária a ser utilizada para realizar o processamento.
Anti-aliasing pós-processamento
No anti-aliasing pós-processamento, os pixels são desfocados para suavizar as bordas dos polígonos. Isso ajuda a eliminar os pixels desalinhados que causam imagens serrilhadas. No entanto, pode deixar as imagens um pouco borradas. É mais perceptível em jogos com muitos detalhes e luzes. Mas o bom é que é rápido e não precisa de tanto poder de processamento como o outro método. Confira os tipos de Anti-aliasing pós-processamento:
MLAA e FXAA
A NVIDIA e a AMD têm dois métodos de anti-aliasing pós-processamento que são muito parecidos. O da AMD se chama MLAA (anti-aliasing morfológico/ morphological anti-aliasing em inglês) e o da NVIDIA é o FXAA (anti-aliasing aproximado rápido/fast approximate anti-aliasing em inglês).
Esses métodos são populares porque melhoram os gráficos sem precisar de muita potência do computador. A única coisa é que os gráficos podem ficar um pouco borrados, mas muitos jogadores acham que vale a pena para ter uma imagem mais nítida. Estes são os dois métodos de anti-aliasing mais populares atualmente.
Anti-aliasing temporal (TXAA)
O Anti-aliasing temporal (TXAA) é uma técnica que busca tornar os movimentos suaves em um ambiente virtual. O TXAA é um método complexo que utiliza supersampling e desfoque para criar gráficos nítidos e movimentos mais naturais.
Com o TXAA, você terá imagens melhores do que com o MLAA ou FXAA, mas ele requer mais capacidade de processamento. Devido ao uso do desfoque, os gráficos podem parecer um pouco suaves.
Anti-aliasing morfológico de subpixel aprimorado (SMAA)
O SMAA está mudando os jogos de computador, este método combina o anti-aliasing espacial e o pós-processamento para deixar a imagem mais nítida. É melhor que o MLAA e o FXAA e usa menos poder de processamento.
Outras soluções anti-aliasing
OEAA: Outer Edge Anti-Aliasing
Em jogos onde as linhas dos modelos se cruzam com outros modelos ou com o fundo o método OEAA é utilizado para suavizar os serrilhados. Algumas placas gráficas, como as da AMD, já fazem esse processamento automaticamente.
Esta técnica funciona como um filtro especial que aplica um algoritmo nas imagens para suavizar as transições entre os pixels. Ela também pode coletar amostras extras fora dos limites dos pixels.
ATAA: Adaptive Temporal Anti-Aliasing
Este método de anti-aliasing é utilizado para suavizar os serrilhados em jogos que estão utilizando a tecnologia Ray Tracing (tecnologia de simulação de sombras e efeitos luminosos.
Filtro anisotrópico
O filtro anisotrópico funciona analisando os pixels ao redor de cada ponto da imagem e fazendo uma média ponderada das cores, suavizando assim as transições entre os pixels. Isso resulta em imagens mais nítidas e com menos distorção, tornando a experiência visual mais agradável para os usuários.
Que tipo de Anti-Aliasing é o melhor para você?
O tipo de Anti-Aliasing recomendado para ser utilizado por cada jogador depende do poder de processamento do computador, devido a alta necessidade de poder de processamento por esta tecnologia. Resumidamente confira a seguir qual método é o mais adequado para seu caso:
- FXAA, para PCs mais fracos
- MSAA, para PCs medianos
- SSAA, para PCs top de linha
O tamanho e a resolução do monitor são importantes para determinar qual o melhor tipo de Anti-Aliasing a utilizar. Monitores de alta resolução, têm naturalmente menos imagens com bordas serrilhadas devido à alta densidade de pixels. Podendo até não ser necessário o uso da tecnologia.
Que tipos de efeitos o Anti-Aliasing causa no computador?
Quando você ativa o filtro em um jogo, o software precisa fazer mais trabalho para suavizar as imagens. Isso pode afetar o desempenho do jogo, especialmente em computadores mais fracos. Até mesmo em computadores melhores, pode haver uma diminuição na performance, mas não tão significativa.
MipMapping – A solução na textura
O MipMapping é uma técnica utilizada em computação gráfica para melhorar a qualidade das texturas aplicadas em objetos tridimensionais. Essa solução consiste na criação de diferentes versões da mesma textura, adaptadas para diferentes níveis de detalhe.
O objetivo do mipmapping é reduzir o serrilhamento (aliasing) mas realizando os ajustes na textura ao invés de ser feito nos polígonos. Para isso, são criadas várias versões da textura, cada uma com um nível de detalhe diferente. À medida que o objeto se afasta ou se aproxima da câmera, a versão mais adequada da textura é escolhida para ser aplicada.
LOD: Level of Detail – A solução em modelos 3D
O LOD é semelhante ao MipMapping, mas é aplicado a modelos 3D. Modelos com muitos vértices que estão longe da câmera consomem muitos recursos de processamento.
Esse método é usado para reduzir a geometria e a complexidade desses modelos, de modo que eles não percam suas características na cena. Geralmente, esse método é combinado com o MipMapping, para reduzir o tamanho tanto do modelo quanto da textura nas distâncias determinadas.
Como obter o anti-aliasing?
Muitos jogos e placas gráficas para PC têm anti-aliasing automático. NVIDIA e AMD têm placas prontas para usar anti-aliasing.
Se o seu jogo ou placa não suportar, você pode baixar drivers da internet que oferecem esta tecnologia. Mas a melhor maneira é ter um PC potente e um bom monitor.
Apenas para os melhores
Apesar de existirem diferentes métodos de anti-aliasing, para obter a melhor qualidade deste tipo de técnica, o ideal é utilizá-la em um computador potente com uma boa placa de vídeo e um monitor que ofereça alta resolução.
Mesmo sendo possível ativar esta tecnologia em computadores mais fracos, a perda de desempenho e taxas de FPS são consideráveis, podendo até inviabilizar a jogatina.
Sobre o autor: