GPU Texture Compression Formats Guide

Understand how GPU-ready block compression formats differ from traditional image files (PNG/JPEG) and container supercompression (KTX2/Basis). Compare bitrates, hardware support, and target runtimes.

Format specifications and platform recommendations

  • ASTC (Adaptive Scalable Texture Compression): Leading mobile standard across modern iOS (Metal A8+) and Android when supported and queried by GPU hardware (Vulkan / OpenGL ES 3.2+). Uses fixed 128-bit blocks across 14 standard 2D footprints (4×4 at 8.00 bpp down to 12×12 at 0.89 bpp) for flexible quality-to-VRAM tuning.
  • KTX2 (Khronos Texture 2.0): Modern universal transmission container featuring Basis Universal supercompression (ETC1S for minimal payload size and UASTC for high visual fidelity), enabling runtime transcoding on WebGL, WebGPU, and cross-platform engines; distinctly separates container packaging from GPU block compression and general image formats (which are usually decoded into raster pixels for GPU sampling).
  • DDS (DirectDraw Surface with BC1-BC7): The PC and desktop standard for DirectX 11/12 and Vulkan pipelines. Spans BC1 (DXT1, opaque RGB), BC3 (DXT5, RGBA), BC4/BC5 (grayscale and normal maps), BC6H (16-bit float HDR), and BC7 (high-fidelity 8 bpp RGBA).
  • PVR / PKM / KTX & Legacy Hardware Formats: ETC/ETC2 provides standard mobile baseline compression (ETC1 for legacy Android, ETC2 for OpenGL ES 3.0+ RGBA); PVRTC (2 bpp and 4 bpp modes) serves legacy PowerVR/iOS scenarios, where this site's PVRTC1 encoding route requires square power-of-two (POT) dimensions.

Quick entrypoints

Use these links to jump directly to the viewer, converter, and format pages for each workflow.

Related searches

Texture Compression Formats Guide - ASTC, DDS BCn, KTX2, ETC, PVR