PSNR (dB)
Szczytowy stosunek sygnału do szumu dla R, G i B. Każde 3 dB mniej więcej o połowę zmniejszają błąd kwadratowy. Powyżej około 40 dB różnice trudno zauważyć; poniżej około 30 dB artefakty są zwykle wyraźne.
Laboratorium porównywania formatów
Zakoduj jeden obraz do BC, ETC, ASTC i Basis Universal tymi samymi koderami, których używają nasze narzędzia, i porównaj jakość, rozmiar pliku oraz pamięć GPU na podstawie rzeczywistych pomiarów.
Upuść tu obraz lub wybierz plik
Wczytywanie obrazu…
Większe obrazy są zmniejszane, nigdy powiększane, i przycinane do pełnych bloków 4×4.
Obrazy nigdy nie opuszczają przeglądarki.
Każdy format jest kodowany i dekodowany w workerze w tle.
Wybierz formaty i uruchom porównanie, aby zobaczyć tu pomiary.
Szczytowy stosunek sygnału do szumu dla R, G i B. Każde 3 dB mniej więcej o połowę zmniejszają błąd kwadratowy. Powyżej około 40 dB różnice trudno zauważyć; poniżej około 30 dB artefakty są zwykle wyraźne.
Podobieństwo strukturalne luminancji w zakresie od 0 do 1. Lepiej niż PSNR wychwytuje rozmycie i blokowość, ale pomija przesunięcia kolorów, więc czytaj oba razem.
Ile tekstura zajmuje po przesłaniu, bez mipmap. Zależy tylko od formatu i rozmiaru; pełny łańcuch mipmap dodaje około 33%.
Zakodowany kontener na dysku. Pliki Basis są superkompresowane i mogą być znacznie mniejsze niż ich zajętość w GPU; pliki DDS, PKM i ASTC to dane GPU z niewielkim nagłówkiem.
Powiększ obraz i włącz siatkę, aby zobaczyć granice bloków. Artefakty wyrównane z siatką wynikają z decyzji, które koder podjął dla każdego bloku.
Każdy format korzysta z ustawień domyślnych swojej strony kodera, np. ASTC w jakości medium. Dla finalnych zasobów otwórz dedykowany koder i dostosuj jakość, przestrzeń kolorów oraz mipmapy.
Tak. Narzędzie uruchamia te same kodery i dekodery WebAssembly co nasze strony kodowania i dekodowania, a następnie mierzy zdekodowane piksele. Sprzęt GPU może zaokrąglać niektóre formaty nieco inaczej, więc różnice poniżej około 1 dB traktuj jako remis.
Pliki Basis są transkodowane na każdym urządzeniu. ETC1S zwykle staje się BC1 lub ETC1 z 4 bitami na teksel, a UASTC – BC7 lub ASTC 4×4 z 8 bitami na teksel. Jakość mierzymy tu na bezpośrednim dekodowaniu do RGBA; transkodowanie do formatu GPU może dodać niewielką stratę.
Kanał alfa jest zachowany i mierzony w osobnej kolumnie PSNR. Formaty, które nie mogą go zachować, są oznaczone na liście: koder BC1 odrzuca obrazy przezroczyste, a ETC1 i ETC2 RGB pomijają alfę. Do przezroczystych tekstur używaj BC3, BC7, ETC2 RGBA, ASTC lub Basis.
Nie. Obrazy są dekodowane, kodowane i mierzone w przeglądarce, a nic nie trafia na serwer.