RootUtils

Texture Channel Packer

Client-Side Secure

Combine metallic, roughness, and AO maps into a single RGB texture for Unity & Unreal Engine.

Quick Presets

r
g
b
a
Output Size:

Ready to Pack

Upload your grayscale maps on the left (Metallic, Roughness, etc.) and click "Pack Textures" to generate your composite image.

Is this tool broken?

Let us know if you found a bug or have a feature request.

The Ultimate Guide to Texture Channel Packing

In modern game development, optimization is king. Texture Packing (or Channel Packing) is a standard technique used by environment artists and technical developers to reduce memory usage and improve rendering performance in engines like Unity, Unreal Engine 5, and Godot.

Instead of saving three distinct grayscale images for Metallic, Roughness, and Ambient Occlusion (which would require 3 separate file lookups by the GPU), you "pack" these gray values into theRed, Green, and Blue channels of a single image.

How PBR Mask Maps Work

A digital image is made of four channels: Red, Green, Blue, and Alpha (RGBA). Since a PBR map (like a Roughness map) is black and white, it only needs a single channel of data. By combining multiple maps into one file, we save VRAM.

Unreal Engine Standard (ORM)

  • Red ChannelAmbient Occlusion
  • Green ChannelRoughness
  • Blue ChannelMetallic

Unity Standard (HDRP / URP)

  • Red ChannelMetallic
  • Green ChannelOcclusion
  • Blue ChannelDetail Map
  • Alpha ChannelSmoothness

No Photoshop Required

Opening Adobe Photoshop or Substance Designer just to pack three images is overkill and slows down your workflow. This tool boots instantly in your browser and processes files using the HTML5 Canvas API.

Privacy & Security

Unlike many online converters that upload your assets to a remote server,RootUtils Texture Packer works 100% offline. Your proprietary game assets never leave your computer, ensuring strict NDA compliance.

Pro Tips for Best Results

  • Resolution Match: For the best quality, ensure all your input images (Metallic, Roughness, etc.) are the same resolution (e.g., all 2048x2048).
  • sRGB vs Linear: Mask maps should usually be treated as "Linear" data in your game engine. Make sure to uncheck "sRGB" in your texture import settings inside Unity or Unreal to avoid lighting artifacts.
  • File Formats: We support JPG, PNG, and WebP. For the output, we generate a high-quality PNG to preserve the Alpha channel transparency.