← All guides

Guide

ORM / ARM Channel Packing for Unreal and Godot

ORM stores Occlusion in red, Roughness in green and Metallic in blue. One sample replaces three textures — important on mobile and large scenes.

Steps

  1. Generate AO, roughness and metallic in the homepage editor.
  2. Choose the Unreal or Godot export preset — it writes an _ORM.png for you.
  3. Import as linear / non-color (sRGB off). In Unreal set compression to Masks.
  4. Wire R→AO, G→Roughness, B→Metallic in the material.

What ORM means

ORM stores Occlusion in red, Roughness in green and Metallic in blue. ARM is the same layout under another name.

Why pack

One texture instead of three means fewer samples and less memory, which matters on mobile and large scenes.

Settings that matter

Import packed textures as linear (sRGB off). In Unreal set compression to Masks. The Unreal and Godot presets here export _ORM.png directly.

FAQ

Does Unity use ORM?

Unity’s Metallic workflow prefers MetallicSmoothness (metallic in R, smoothness in A). Use the Unity preset instead of ORM.

Can I pack ORM myself?

Yes, in any channel packer. Export separate maps from the generic ZIP if you want full control.

Is AO required in R?

If you skip AO, leave R white (no occlusion) so roughness and metallic still read correctly.