O ASTC (Adaptive Scalable Texture Compression) é um formato de compressão de textura baseado em blocos, altamente flexível e eficiente, desenvolvido pela ARM e padronizado pelo Khronos Group. Ele foi projetado principalmente para uso em aplicações de gráficos 3D em tempo real, particularmente em dispositivos móveis, sistemas embarcados e, cada vez mais, em jogos para desktop e consoles. Uma característica fundamental do ASTC é sua adaptabilidade, permitindo uma ampla gama de taxas de bits (de 8 bits por pixel até menos de 1 bit por pixel) e tamanhos de bloco variáveis (por exemplo, 4x4, 5x4, 5x5, até 12x12 pixels). Essa flexibilidade permite que os desenvolvedores ajustem o equilíbrio entre a qualidade da imagem e o uso de memória, tornando-o adequado para diversos tipos de texturas, como mapas difusos, mapas de normais, mapas especulares e elementos de interface do usuário (UI). O ASTC suporta texturas 2D, texturas 3D e cubemaps, bem como dados LDR (baixo alcance dinâmico) e HDR (alto alcance dinâmico), além de vários espaços de cores, incluindo sRGB e linear. Suas principais vantagens incluem qualidade visual superior em taxas de bits mais baixas em comparação com muitos formatos de compressão mais antigos, requisitos reduzidos de largura de banda de memória e maior eficiência energética em hardware compatível. O ASTC é amplamente suportado por APIs gráficas modernas como OpenGL ES, Vulkan e DirectX 12 Ultimate, tornando-o uma escolha preferencial para renderização gráfica de alto desempenho.