Albedo to Normal and PBR Map Generator


Generate normal maps and related PBR texture maps from assigned albedo images in the Unity Editor, including height, smoothness, cavity/AO, metallic masks, URP packed maps, and HDRP mask maps.


by Veridian Systems


Price History +

Albedo to Normal and PBR Map Generator is a free Unity Editor utility for generating normal maps and related PBR texture maps from assigned albedo images and optional normal inputs.

The tool is intended for texture workflows where you have a color/albedo texture but need supporting maps for material setup, prototyping, or further editing. It can generate normal maps, height estimates, smoothness estimates, cavity/AO estimates, color-selected metallic masks, URP Lit packed maps, and HDRP mask maps.

The workflow is manual and predictable. Instead of scanning folders or guessing texture roles from filenames, the tool uses explicit input slots. Assign an albedo texture, a normal texture, or both, then choose which outputs to generate.

Generated maps are estimates. Albedo textures do not contain true surface geometry, true baked ambient occlusion, or reliable material identity. This tool is designed to create useful derived maps that can be previewed, saved, and refined as part of a Unity material workflow.


Main Uses

• Generate a normal map from an albedo texture.
• Save the height estimate used for albedo-derived normal generation.
• Process an existing normal map by adjusting strength, read mode, green-channel orientation, blue-channel rebuilding, and normalization.
• Generate smoothness from albedo luminance, inverted luminance, saturation, normal detail, or metallic mask data.
• Generate a cavity/AO-style estimate from albedo-derived height data or normal detail.
• Create a metallic mask by selecting pixels similar to a chosen target color.
• Pack generated metallic, AO, and smoothness data into URP or HDRP texture formats.
• Preview generated maps before writing files to the project.
• Process one texture set or a small manually assigned queue using shared settings.


Normal Map Generation

The normal map workflow starts by converting the assigned albedo texture into an estimated height field. The height estimate can be derived from luminance, inverted luminance, RGB average, max/min RGB, saturation, individual color channels, alpha, a custom channel mix, or local color-edge detail.

The default hybrid mode uses luminance for broader height information and color differences for visible seams, cracks, tile borders, cobblestone divisions, panel edges, and other local boundaries.


Normal generation controls include:

• Normal strength
• Broad smoothing radius
• Height contrast
• Fine detail strength
• Fine detail radius
• Color edge influence
• Color edge radius
• Treat edges as grooves
• Invert height
• Flip green channel
• Normalize output

Existing Normal Map Processing

If you already have a normal map, the tool can process it instead of generating one from albedo.


Supported normal input read modes include:

• Auto Detect
• Standard RGB Normal
• Red / Green Packed
• Unity Packed A/G

This is useful when a normal map needs format handling, strength adjustment, green-channel flipping, blue-channel rebuilding, or normalized output.


Smoothness, Cavity/AO, and Metallic Outputs

The tool can create editable grayscale maps for material setup.

Smoothness can be generated from:

• Albedo luminance
• Inverted albedo luminance
• Albedo saturation
• Normal detail
• Metallic mask data


Cavity/AO can be estimated from:

• Albedo-derived height data
• Normal detail, when a normal input is assigned

The cavity/AO output is a local image-based estimate. It is not a replacement for baked ambient occlusion from real geometry.

The metallic mask is generated through user-guided color selection. Choose a target color in the albedo texture, then adjust tolerance, edge softness, selected metallic value, and unselected metallic value.

This is useful for textures with distinct metal-colored regions such as gold trim, copper wires, screws, bolts, silver panels, or metallic flecks.


URP and HDRP Packed Map Output

The tool can save packed texture maps for common Unity render pipeline workflows.


URP Lit packed map layout:

• Red = Metallic
• Green = AO / Occlusion
• Blue = Unused
• Alpha = Smoothness


HDRP mask map layout:

• Red = Metallic
• Green = AO
• Blue = Detail Mask
• Alpha = Smoothness

Packed output uses generated metallic, cavity/AO, and smoothness sources when available. If a channel source is missing, fallback values can be used. The tool blocks packed maps that would contain only fallback constants.


Preview Workflow

The asset includes an external preview window for checking source textures and generated outputs before saving files.


The preview can inspect:

• Source albedo
• Source normal
• Height estimate
• Generated normal
• Processed normal
• Smoothness
• Cavity/AO
• Metallic
• URP packed map
• HDRP mask map

The 2D view can display the selected map directly or as a repeated 3x3 tile. The 3D view can preview the material response on a cube, cylinder, or plane with adjustable tiling, object rotation, light rotation, and zoom.

Preview textures are temporary editor-memory data. They are not saved until you run generation from the main window.


Manual Queue Workflow

The tool can process one active texture set or a small manually assigned queue.

When using multiple input sets, all enabled sets must use the same input structure:

• All albedo-only
• All normal-only
• All albedo + normal

This avoids mixed queue cases where some enabled outputs are valid for one texture set but invalid for another.


Procedural Demo Textures

A small demo window is included for testing the workflow. It can generate procedural albedo textures in the Editor and send them to the main window as known albedo inputs.


The demo generator can create:

• Voronoi cobblestone-style albedo texture
• Perlin organic stone-style albedo texture

No large texture library is included. Demo textures are generated inside the Editor and saved into your project only when you run the demo generation actions.


Generated Asset Ownership

The texture maps and optional materials you generate with this tool are your generated output assets.

You may use, modify, sell, and redistribute generated texture maps and generated material assets in your own games, demos, scenes, rendered media, asset packs, or commercial projects.

This permission applies to generated output assets. It does not grant permission to redistribute the original package, source code, editor tools, documentation, demo scripts, or other original package files.


Important Scope Notes

This tool is meant for derived texture map generation from albedo and optional normal inputs. It is not a complete PBR texture authoring suite, full channel-packing toolkit, material scanner, or physically accurate material reconstruction system.


Important limitations:

• Albedo-derived maps are estimates.
• The tool cannot reconstruct true 3D geometry from albedo.
• The cavity/AO output is not true baked AO from real scene geometry.
• The metallic mask is based on user-selected color similarity, not automatic material recognition.
• Painted shadows, highlights, baked lighting, or stylized color changes in the source texture may affect the generated maps.
• The packed map tools are focused on this generator’s URP and HDRP outputs, not broad arbitrary channel packing.
• Optional generated materials may need adjustment for custom shader workflows.
• Runtime texture generation is not included.

For best results, preview the generated maps, adjust settings per texture, and refine the saved maps manually if your project requires more exact material behavior.


Support the Tool

If this free tool is useful in your project, a rating or short review on the Unity Asset Store helps other users evaluate it and supports continued maintenance.


Related Veridian Tools

Rock Generator Pro: A procedural rock generation workflow for creating rock meshes, baked textures, prefab output, terrain placement, and environment-art production. Check the publisher page for availability.

Mesh Constructor: A utility for combining or organizing dense prefab setups into more optimized static mesh structures.

BurstLOD: A tool for generating runtime or Editor-based LODs for custom meshes and environment assets.

You can view available tools on my publisher page:

https://assetstore.unity.com/publishers/120204