No final de junho, a AMD apresentou sua tecnologia de compressão de arquivos para jogos chamada NTBC (Neural Texture Block Compression).
Essa técnica, que utiliza inteligência artificial (IA) para comprimir texturas, foi revelada no 35º Eurographics Symposium on Rendering e detalhada pelos pesquisadores Shin Fujieda e Takahiro Harada no site GPU Open.
O NTBC da AMD foi criado para solucionar um problema crescente no mundo dos jogos: o tamanho gigantesco dos arquivos.
Hoje em dia, é comum jogos ocuparem 150 GB de espaço em disco, principalmente por causa das texturas de alta resolução usadas em monitores 4K.
A grande sacada do NTBC é aprender a mapear texturas não compactadas para texturas compactadas em blocos, como os formatos BC1 e BC4. O resultado?
Uma redução de até 70% no espaço de armazenamento, sem comprometer muito a qualidade da textura e sem a necessidade de alterar os shaders. Isso facilita bastante a adoção dessa tecnologia nos pipelines gráficos atuais.
Como funciona o NTBC?
O NTBC utiliza perceptrons multicamadas (MLPs) para codificar dados compactados em blocos de todas as texturas de um material, alcançando taxas de bits mais baixas que os métodos tradicionais, mas mantendo o mesmo formato de dados.
A técnica é simples: os pesos de rede são armazenados no disco, carregados na memória e usados para reconstruir dados de textura compactados que são copiados para a VRAM.
Isso significa que não é necessário mudar os shaders, o que torna a implementação mais fácil. Os pesquisadores explicam que o NTBC prevê dados compactados em vez de carregar texturas compactadas do disco.
Depois, os valores de texel são decodificados usando o método de descompressão BC já existente no tempo de execução.
Isso introduz uma sobrecarga computacional mínima na fase de carregamento de textura, variando entre 27,31ms e 49,84ms, dependendo do método utilizado.
Benefícios e desafios do NTBC
O NTBC ainda não é perfeito, mas apresenta várias vantagens. A técnica pode ocasionalmente criar detalhes borrados ou artefatos de bloco, principalmente ao usar grades de resolução mais baixa.
Porém, métodos alternativos de codificação, como codificação de foco de textura ou codificação posicional local, podem ajudar a mitigar esses problemas.
Os pesquisadores da AMD também acreditam que o NTBC pode ser estendido para outros formatos, como BC6H e BC7, aumentando ainda mais seu potencial de aplicação.
Quando veremos o NTBC em ação?
Ainda não sabemos exatamente quando os jogos começarão a utilizar o NTBC. Contudo, a expectativa é alta e a esperança é que essa tecnologia seja implementada o quanto antes, proporcionando uma experiência de jogo melhor sem a necessidade de grandes quantidades de armazenamento.