Normal generator

Normal Map Generator for Unity

Generate a tangent-space map, keep its Y direction visible, then verify the import as a Normal map under directional lighting. Pipeline and platform differences are a reason to test—not a reason to hide the convention.

Normal generatorChoose a PNG, JPEG, WebP, or BMP (up to 50 MB).
Local image processing
Drop an image hereChoose a PNG, JPEG, WebP, or BMP (up to 50 MB).Local image processing

A reliable workflow

Import as vector data before testing Y

Import the texture as a Normal map and keep green-channel verification explicit; Unity exposes a Flip Green Channel correction when conventions differ.

Normal map engine setup flowA lossless normal map is imported as non-color vector data, decoded by a normal node, and connected to a material.Unity normal-map import checklistTEXTURE TYPENORMAL MAPGREEN YVERIFYMATERIALNORMAL SLOTPIPELINECHECK
1

Match the material, pipeline, and UVs

Built-in, URP, and HDRP materials expose normal inputs in different interfaces, but all require matching UVs and a vector-data import path.

2

Verify platform compression and mip levels

Inspect platform compression and mip levels on the target build because an editor preview cannot represent every deployment format.

3

Import the normal map for Unity as vector data

Generate a tangent-space normal map for Unity, export a lossless PNG, and set its Texture Type to Normal map. That import type prepares the texture for normal mapping rather than ordinary color display. Unity exposes Flip Green Channel when the stored Y direction differs from the convention expected by the project, but the checkbox should follow a lighting test rather than an assumption based on file color. Assign the normal map for Unity to the normal input used by the active Built-in, URP, or HDRP material and confirm that the intended UV set drives it.

4

Test the target platform, not only the editor

Place the material on a representative mesh and move a directional light vertically and horizontally. Check mirrored UV islands, hard edges, tangent generation, and material intensity before changing the source normal map for Unity. Then review platform overrides, maximum texture size, normal-map compression, mip generation, streaming, and filtering on a development build. These settings can change distant or grazing-angle shading even when the editor preview is clean. Keep the chosen Y convention and import settings with the asset so another user can reproduce the normal map for Unity setup.