Como funciona a superamostragem do anti-aliasing?

0

A partir da leitura on-line eu entendo a idéia básica de como o Supersampling Anti-Aliasing funciona, ele renderiza a cena em uma resolução maior que a tela do usuário, usa os pixels extras para calcular uma média e depois reduz a resolução.

Eu não entendo como isso funciona na prática. Por exemplo, se houver um pixel vermelho de uma parede ao lado de um pixel azul de um céu, quando a cena for renderizada x2 SSAA, o pixel vermelho não será apenas quatro pixels vermelhos e o mesmo com o pixel do céu azul? isso ajuda ao calcular uma média.

Os quatro novos pixels vermelhos são sobrepostos com a imagem original? Dessa forma, você obteria uma mistura de pixels vermelhos e azuis e seria capaz de calcular uma média para ajudar a suavizar a transição entre a parede e o céu?

Qualquer ajuda seria apreciada.

    
por RJSmith92 17.07.2015 / 20:34

2 respostas

2

Isso ajuda muito. Em seu exemplo original:

... Vermelho Vermelho Vermelho Azul Azul Azul ...

O limite entre o vermelho e o azul parece uma escada

Na imagem sob amostragem

... Vermelho Vermelho Vermelho Vermelho Azul Azul Azul ...

Ao reduzirmos a amostra

... Vermelho] [Vermelho Vermelho] [Azul Vermelho] [Azul Azul] [Azul ...

Agora, temos um pixel que é vermelho e azul em média, desfocando o limite entre as regiões vermelha e azul.

Se você imaginar um limite diagonal entre duas regiões, vermelho e azul, a sobreamostragem irá inserir pixels intermediários nas bordas da escada, já que muitas das caixas 2x2 necessariamente incluem pixels vermelhos e azuis nelas.

    
por 17.07.2015 / 21:19
2

Ok, vou tentar explicá-lo, pois apliquei métodos como este antes ao trabalhar com fotos, para aplicar alguns dos algoritmos de "suavização" a fotos ou fotos de baixa resolução, sem obter uma suavização profunda muito ampla.

é algo assim.

Aqui estão seus pixels na resolução usual que você estaria visualizando. Na extrema necessidade de anti-aliasing ou suavizar os jaggies.

De um lado, aumentamos a imagem para 4X e aplicamos o mesmo algoritmo anti-aliasing

Éimportantenotarque,comoumcomputadorestúpido,nãopossosimplesmentedobraropretoparaobranco(mudandoaquantidadedebranco),mastambémtenhoquedobrarobrancoparaopreto(equilibrandoaequação:-).Euestouaplicandoumamatrizmatemáticacegamenteparaondemedisseramparaaplicá-la.Emboraosalgoritmosdaplacadevídeosejammuitosofisticadoseelesrealmentenãosejamtãocegosquantoisso.

Exemploobserváveldabalançaemjogos,vocênãogostariaquesuacercadesaparecessenocéu,evocênãoquerqueseucéusetorneacerca,entãoqualquerajustedeveseraplicadotantoaospixelsdocéuquantoaospixelsdacercamaisigualmente.Tambémumexemplodecomoasplacasdevídeoeosmecanismosdejogosalteramesseequilíbrioparaobterumamelhorimagemaindacomessetipodedetalhesdifíceis.

Emalgummomento,tudoissoprecisavoltarparaaresoluçãodatela,ondeseráaresoluçãomaisbaixae,depoisdeterumagrandevariedadedeitensparaajustar,essegrupoextradepixelsseráagoraperfeitamentemescladoemmenospixels

(bem,nãoeraacorperfeitaparaessamistura,maseunãofizamatemática) E como você pode ver, fica horrível novamente na tela.

No lado de baixa resolução, temos essa vasta área afetada / modificada à medida que dobramos todos esses pixels um em direção ao outro (tanto o preto quanto o branco) e temos uma grande faixa de suavização porque trabalhamos apenas em baixa resolução.

Em nosso lado de alta resolução, obtivemos um conjunto de equilíbrio perfeito de pixels misturando 4X pixels, o que torna uma área de suavização menor. então o lado de alta resolução encontra os pixels que suavizam tudo isso realmente bonito, mas não deixa uma grande confusão.

Porque (novamente) nós temos que dobrar muito mais pixels, para manter o equilíbrio de misturar um com o outro, se nós escalarmos primeiro podemos criar essa mistura de dobra em uma escala menor, ainda manter o equilíbrio de dobrar um para o outro, e o resultado final é pixels menos afetados, o mesmo esconderijo jaggie.

Quando você compara os dois métodos lado a lado usando jogos, a diferença que é alcançada com o que parece ser muito trabalho extra não é muito. A mesma coisa quando estou processando fotos que serão usadas na versão inferior, é um grande esforço extra para mim e para a máquina, e os resultados são apenas um pouco melhores.

    
por 17.07.2015 / 22:20