Skip to content

Roughness Metallic AmbientOcclusion (RMA) Map

Lunci edited this page Jan 2, 2019 · 7 revisions

Roughness/Metallic/AmbientOcclusion (RMA) Map specifies each factors in RGB channel. (glTF2 standard)

  • R Channel: AmbientOcclusion
  • G Channel: Roughness
  • B Channel: Metallic

To merge separated Roughness/Metallic/AmbientOcclusion maps into single RMA map, please refer to this Tutorial using GIMP.

HelixToolkit PBR material contains RoughnessMetallicMap and AmbientOcclusionMap properties. RoughnessMetallicMap is used to sample Roughness and Metallic factor on G and B channel. AmbientOcclusionMap samples AO factor on R channel. If using single RMA map, assign the RMA texture onto both RoughnessMetallicMap and AmbientOcclusionMap properties.

PBR material has separate MetallicFactor/RoughnessFactor/AmbientOcclusionFactor properties. When using RMA map, actual factors per pixel are calculated as following:

Actual Metallic Factor = MetallicFactor * Metallic from RMA map B channel
Actual Roughness Factor = RoughnessFactor * Roughness from RMA map G channel
Actual AmbientOcclusion Factor = AmbientOcclusionFactor * AmbientOcclusion from RMA map R channel

For example, if you only needs Ambient Occlusion Map, set Metallic and Roughness channels to 0. This setting will allow to use the Metallic and Roughness in Material properties instead of the RMA map.