Kanalpackning
Att trycka in flera orelaterade gråskalekartor i R-, G-, B- och A-kanalerna hos en enda textur för att spara minne och texturläsningar.
Ett metallic-roughness-arbetsflöde behöver separata kartor för ambient occlusion, råhet och metallicitet, men var och en är en enkanalig gråskalebild — slöseri som tre fulla RGB-texturer. Packar man dem i en RGBA (den vanliga ORM-layouten: occlusion-roughness-metallic) sjunker minnet till en tredjedel, och viktigare: en shader kan läsa alla tre i en enda sampling i stället för tre.
Haken är att sådana kartor inte bör komprimeras eller mipmappas som om de vore färg: blockkomprimering och sRGB-kurvor förutsätter korrelerade kanaler, och okorrelerad data snubblar på båda. Man väljer ett linjärt format eller accepterar lite läckage. En normalmaps två meningsfulla kanaler packas ibland bredvid och den tredje rekonstrueras i shadern.