Adaptiv skalbar texturkompression

Adaptiv skalbar texturkomprimering ( ASTC ) är en förlustbaserad blockbaserad texturkompressionsalgoritm utvecklad av Jørn Nystad et al. av ARM Ltd. och AMD .

Fullständiga detaljer om ASTC presenterades först offentligt vid konferensen High Performance Graphics 2012, i en artikel av Olson et al. med titeln "Adaptive Scalable Texture Compression".

ASTC antogs som en officiell förlängning för både OpenGL och OpenGL ES av Khronos Group den 6 augusti 2012.

Hårdvarustöd

Säljare/produkt Profil Generation
AMD Radeon ?
Apple GPU:er Endast LDR A8 till A12
Full Sedan A13
Arm Mali Full Sedan Mali-T620/T720/T820
Imagination PowerVR Full Sedan Series6XT
Intel GPU:er Full Från Skylake ; Borttagen i Arc / Gen12.5
Nvidia Tegra ? Sedan Kepler
Qualcomm Adreno Endast LDR [ bättre källa behövs ] Sedan 4xx-serien

På Linux har alla Gallium 3D-drivrutiner en reservprogramvara sedan 2018, så ASTC kan användas på vilken AMD Radeon GPU som helst.

Översikt

Exempelbild före komprimering
Detalj från exempelbild, efter komprimering vid 8, 3,56 och 2 bitar/pixel

Komprimeringsmetoden är en utveckling av färgcellskomprimering med funktioner som inkluderar många täta bithastigheter, flera färgformat, stöd för texturer med högt dynamiskt omfång (HDR) och stöd för äkta 3D-textur.

Det angivna primära designmålet för ASTC är att göra det möjligt för innehållsutvecklare att ha bättre kontroll över utrymmet/kvalitetsavvägningen som är inneboende i varje förlustbringande komprimeringssystem. Med ASTC är förhållandet mellan intilliggande bithastigheter i storleksordningen 25 %, vilket gör det billigare att öka kvaliteten för en given textur.

Att koda olika tillgångar kräver ofta olika färgformat. ASTC tillåter ett brett urval av ingångsformat, inklusive endast luminans, luminans-alfa, RGB, RGBA och lägen optimerade för ytnormaler. Designern kan alltså välja det optimala formatet utan att behöva stödja flera olika komprimeringsscheman.

Valen av bithastighet och färgformat begränsar inte varandra, så att det är möjligt att välja mellan ett stort antal kombinationer.

Trots denna flexibilitet uppnår ASTC bättre toppsignal-brus-förhållanden än PVRTC , S3TC och ETC2 när de mäts vid 2 och 3,56 bitar per texel . För HDR-texturer ger den resultat som är jämförbara med BC6H vid 8 bitar per texel.

Färgformat som stöds

Kodningsformat Beskrivning
L Endast för luminans
LA Luminans med transparens
L+A Luminans med okorrelerad transparens
X+Y Ytnormaler
RGB Fullfärg
XY+Z Ytnormaler med okorrelerat Z
RGBA Fullfärg med genomskinlighet
RGB+A Fullfärg med okorrelerad transparens

Var och en av dessa kan kodas som lågt eller högt dynamiskt område. Kodaren väljer färgformat oberoende för varje block i bilden.

2D-blockavtryck och bithastigheter

ASTC-texturer komprimeras med en fast blockstorlek på 128 bitar, men med ett variabelt blockfotavtryck som sträcker sig från 4×4 texel upp till 12×12 texel. De tillgängliga bithastigheterna sträcker sig alltså från 8 bitar per texel ner till 0,89 bitar per texel, med fina steg emellan.

Block fotavtryck Bithastighet Ökning
4×4 8.00 25 %
5×4 6,40 25 %
5×5 5.12 20 %
6×5 4,27 20 %
6×6 3,56 14 %
8×5 3,20 20 %
8×6 2,67 5 %
10×5 2,56 20 %
10×6 2.13 7 %
8×8 2.00 25 %
10×8 1,60 25 %
10×10 1,28 20 %
12×10 1.07 20 %
12×12 0,89

I tabellen ovan visar kolumnen "Inkrement" det extra lagringsutrymme som krävs för att lagra en textur med denna bithastighet, jämfört med den näst minsta. Blockfotspår presenteras som bredd × höjd.

3D-blockavtryck och bithastigheter

ASTC 3D-texturer komprimeras med en fast blockstorlek på 128 bitar, som för 2D, men med ett variabelt blockfotavtryck som sträcker sig från 3×3×3 texel upp till 6×6×6 texel. De tillgängliga bithastigheterna sträcker sig alltså från 4,74 bitar per texel ner till 0,59 bitar per texel, med fina steg emellan.

Block fotavtryck Bithastighet Ökning
3×3×3 4,74 33 %
4×3×3 3,56 33 %
4×4×3 2,67 33 %
4×4×4 2.00 25 %
5×4×4 1,60 25 %
5×5×4 1,28 25 %
5×5×5 1.02 20 %
6×5×5 0,85 20 %
6×6×5 0,71 20 %
6×6×6 0,59

Blockfotspår presenteras som bredd × höjd × djup.

Se även

externa länkar