Laboratório de comparação de formatos

Comparação de compressão de texturas

Codifique uma imagem em BC, ETC, ASTC e Basis Universal com os mesmos codificadores usados pelas nossas ferramentas e compare qualidade, tamanho de arquivo e memória de GPU com medições reais.

1

Imagem de origem

Solte uma imagem aqui ou escolha uma

Carregando imagem…

Tamanho de trabalho (lado maior)

Imagens grandes são reduzidas, nunca ampliadas, e cortadas em blocos 4×4 inteiros.

As imagens nunca saem do seu navegador.

2

Formatos

8 selecionados
Desktop · BC
Mobile · ETC
Mobile · ASTC
Universal · Basis

Cada formato é codificado e decodificado em um worker em segundo plano.

3

Resultados

Escolha os formatos e execute a comparação para ver as medições aqui.

Como ler os resultados

PSNR (dB)

Relação sinal-ruído de pico sobre R, G e B. Cada 3 dB reduzem o erro quadrático aproximadamente pela metade. Acima de cerca de 40 dB as diferenças são difíceis de ver; abaixo de cerca de 30 dB os artefatos costumam ser evidentes.

SSIM

Similaridade estrutural da luminância, de 0 a 1. Capta desfoque e blocos melhor que o PSNR, mas ignora mudanças de cor, então leia os dois juntos.

Memória de GPU

O que a textura ocupa depois de enviada, sem mipmaps. Depende só do formato e do tamanho; some cerca de 33% para uma cadeia completa de mipmaps.

Tamanho do arquivo

O contêiner codificado em disco. Arquivos Basis são supercomprimidos e podem ser bem menores do que ocupam na GPU; arquivos DDS, PKM e ASTC são os dados de GPU mais um pequeno cabeçalho.

Grade de blocos

Aproxime e ative a grade para ver os limites dos blocos. Artefatos alinhados à grade vêm de decisões que o codificador tomou em cada bloco.

Configurações do codificador

Cada formato usa os padrões da sua página de codificação, como ASTC com qualidade média. Para os recursos finais, abra o codificador específico e ajuste qualidade, espaço de cor e mipmaps.

Perguntas frequentes

Estes resultados correspondem aos codificadores reais?

Sim. A ferramenta executa os mesmos codificadores e decodificadores WebAssembly das nossas páginas de codificação e decodificação e mede os pixels decodificados. O hardware da GPU pode arredondar alguns formatos de forma um pouco diferente, então trate diferenças abaixo de cerca de 1 dB como empate.

Por que a memória de GPU do Basis Universal é uma estimativa?

Arquivos Basis são transcodificados em cada dispositivo. O ETC1S costuma virar BC1 ou ETC1 com 4 bits por texel, e o UASTC vira BC7 ou ASTC 4×4 com 8 bits por texel. Aqui a qualidade é medida em uma decodificação direta para RGBA; a transcodificação para um formato de GPU pode acrescentar uma pequena perda.

Como as imagens com transparência são tratadas?

O alfa é mantido e medido em uma coluna de PSNR própria. Os formatos que não conseguem mantê-lo são marcados na lista: o codificador BC1 rejeita imagens transparentes, e ETC1 e ETC2 RGB descartam o alfa. Para texturas transparentes, use BC3, BC7, ETC2 RGBA, ASTC ou Basis.

Minhas imagens são enviadas?

Não. As imagens são decodificadas, codificadas e medidas no seu navegador, e nada é enviado a um servidor.