Unity utility to remap channels from one or more textures to a new one
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-03-29 21:42:04 +02:00
.github Create FUNDING.yml 2025-04-14 16:54:29 +02:00
Editor Wrapped the entire thing in #if UNITY_EDITOR 2025-06-14 16:10:48 +02:00
Media Generate .meta 2026-03-28 21:11:56 +01:00
Editor.meta Moved to Editor directory 2025-04-26 15:34:35 +02:00
LICENSE Switched to CC0 license 2026-03-28 22:12:39 +01:00
LICENSE.meta Added the context menu and name next to texture 2025-04-14 02:18:56 +02:00
Media.meta Generate .meta 2026-03-28 21:11:56 +01:00
package.json Added package.json 2026-03-29 21:37:00 +02:00
package.json.meta Added package.json 2026-03-29 21:37:00 +02:00
README.md Updated README 2026-03-29 21:42:04 +02:00
README.md.meta Added the context menu and name next to texture 2025-04-14 02:18:56 +02:00

Nn Unity Texture Remapper

This Unity tool allows you to easily combine channels of one or more textures into a new one.

Usage

This tool is made and tested in Unity 6, other versions may work too.

Importing

Git package

https://github.com/nnra6864/UnityTextureRemapper.git

Accessing Texture Remapper

Context Menu

If one or more texture assets are selected in the asset browser, you can right-click to access the Context Menu that will have a new option, Remap Textures, which opens the tool window and automatically loads selected textures in.

Editor Window

You can also access the Remap Textures window by navigating to the Toolbar -> NnUtils -> Remap Textures. This won't import selected textures.

Using Texture Remapper

Texture

Add Texture adds a new texture.
Remove Texture button removes the corresponding texture.
Select the input texture of your choice and proceed to mapping.

Mapping

Add Mapping adds a new mapping.
Remove Mapping removes the corresponding mapping.
From represents the channel tool will select from the input texture.
To represents the channel of the output texture we are mapping to.
Invert determines whether the input channel will be inverted when mapping, e.g. Roughness to Smoothness.

Creating the Output Texture

Simply click the Create Texture button and choose the path texture will be saved to.

Examples

Metallic and Roughness to MetallicSmoothness

Metallic map in Unity actually holds 2 values, Metallic in the R channel, and Smoothness in the A channel, therefore, I'll be referring to it as MetallicSmoothness.
When baking textures in Blender, you usually don't have the MetallicSmoothness option.
To simplify the Blender workflow and avoid editing the shader etc., we can simply remap easy to bake Metallic and Roughness to MetallicSmoothness.

From Channel To Channel Invert
Metallic R Metallic R X
Roughness R Smoothness A ✓

image

ARM to MAS

ARM is a commonly found map type that holds Ambient Occlusion, Roughness and Metallic values.
Unity Terrain, for example, expects a different kind of map, let's call it MAS, which stands for Metallic, Ambient Occlusion, Smoothness.
Whilst we can easily map AO from channel R to channel G, and Metallic from B to R, since Roughness is the opposite of Smoothness, we also have to Invert it when mapping from G to A.

From Channel To Channel Invert
Ambient Occlusion R Ambient Occlusion G X
Roughness G Smoothness A ✓
Metallic B Metallic R X

MAS

☦ Ι̅Ϲ̅ Χ̅Ϲ̅ ΝΙΚΑ — Ὁ Ὤν

Εἰς δόξαν τοῦ Θεοῦ
To the glory of God

Τῇ Ὑπεραγίᾳ Θεοτόκῳ δόξα
Glory to the Most Holy Theotokos

Δόξα τῷ Θεῷ πάντων ἕνεκεν
Glory to God for all things

ΑΜΗΝ

☦