Skip to content
Texturing

DirectX vs OpenGL Normal Map

Which way the green channel points

Also known as: Flip green channel · Y+ vs Y- · OpenGL normal map · DirectX normal map · Inverted normal map green channel

Definition

DirectX and OpenGL normal maps are the two conventions for the green (Y) channel of a tangent-space normal map. OpenGL maps (Y+) treat green as pointing up, while DirectX maps (Y-) treat it as pointing down, so the green channel is inverted between them. Unreal Engine expects DirectX-style normals; Blender, Maya and Unity use OpenGL-style. A map in the wrong convention still loads, but its bumps look inverted under light.

In production

If a normal map looks lit from the wrong side, with dents reading as bumps and the effect strongest on top and bottom edges, the green channel is flipped. Fix it at the source by exporting the right format (Substance Painter and Marmoset Toolbag can both output either) or, in Unreal, by enabling Flip Green Channel in the texture's settings. Pick one convention per project, bake and export to it, and write it in your pipeline notes so every artist matches.

Learn DirectX vs OpenGL Normal Map in

Tools that use DirectX vs OpenGL Normal Map

See also