Pack Ambient Occlusion, Roughness, and Metallic maps into a single ORM texture (R=AO, G=Roughness, B=Metallic). Standard PBR workflow for Unity HDRP, Unreal Engine, Godot, and Blender. Live preview, instant client-side processing.
R = Ambient Occlusion, G = Roughness, B = Metallic. Drop maps below or use the batch tab for multiple sets.
ORM (Occlusion, Roughness, Metallic) is the standard packed mask format used by modern PBR pipelines. Instead of three separate grayscale textures, you combine them into one RGB image, saving GPU memory and texture lookups.
R channel stores Ambient Occlusion, G channel stores Roughness, B channel stores Metallic. Your shader samples once and extracts all three.
Unity's High Definition Render Pipeline uses ORM as its standard mask map format. The Lit Shader expects R=Metallic, G=AO, B=DetailMask — our output is compatible after a channel swap in your shader graph.
Unreal Engine 5 uses the same ORM layout (R=AO, G=Roughness, B=Metallic) in its material system. Our output imports directly.
Three separate 2K textures use 48MB of VRAM. One packed ORM texture uses 16MB. That's a 66% reduction for every material in your scene.
Godot 4's StandardMaterial3D and Blender's Principled BSDF both accept packed ORM textures with the same R=AO, G=Roughness, B=Metallic layout.
All packing is done locally in your browser. Your texture maps are never uploaded anywhere, complete privacy guaranteed.