Tangent-space normal maps only work perfectly when the baker and the game engine agree on tangents, smoothing, and channel orientation. Here’s how to get reliable results from a ZBrush-centered pipeline.
Prep the low poly and UVs first:
- Retopology: Ensure clean, evenly distributed quads. Keep silhouette-supporting loops where needed.
- Hard edges and UVs: Split UV islands anywhere you place a hard edge. Avoid long, skinny islands to minimize gradient skew.
- Consistent texel density: Keep density uniform across major parts; add 8–16 px padding for 2K maps (scale padding with resolution).
- Scale and orientation: Freeze your export scale early and keep it consistent through all DCCs.
Bake with a MikkTSpace-capable tool for engine parity (recommended for Unreal/Unity):
- High-res sculpt in ZBrush; generate or import the low poly with UVs.
- Export both. Bake in Substance 3D Painter/Designer, Marmoset Toolbag, or xNormal with MikkTSpace enabled.
- Set the correct green channel orientation for the target engine (DirectX vs OpenGL; Unreal and modern Unity typically use DirectX/G flipped).
- Import normals as linear data (disable sRGB) in the engine to avoid gamma distortions.
If you must bake in ZBrush, minimize mismatches:
- Tool > UV Map: Choose an appropriate Map Size (e.g., 2048/4096) and set Border padding.
- Tool > Normal Map:
- Enable Tangent for tangent-space normals.
- Enable SmoothUV if your target softens/smooths vertex normals across surfaces (common for organic meshes). Keep it off for strictly hard-edged workflows.
- Use Flip G for DirectX-style engines if your viewer test shows inverted green lighting.
- Click Create NormalMap, then export the texture, or batch via Zplugin > Multi Map Exporter.
- Zplugin > Multi Map Exporter:
- Enable Normals and Tangent Space, set Map Size, UDIM naming (if used), and per-channel flips as required.
- Set padding here as well to ensure bleed across UV seams.
- Match smoothing: Import the same low poly into your engine with identical hard edges/soft normals used during baking.
Validation checklist:
- Seam test: Place a bright directional light and rotate it; seams should remain invisible across UV borders.
- Channel orientation: If shading looks “dented” vs “puffed,” flip the green channel and recheck.
- Compression: Prefer BC5/ATI2 for game-target normals to avoid red/green channel cross-talk.
- Skew fixes: Add supporting geometry on harsh curvature, or rebake with hardened edges aligned to UV splits.
Pro workflow tips:
- For guaranteed Mikk match while staying ZBrush-centric, consider baking an object-space normal in ZBrush, then convert to Mikk tangent-space in Handplane or rebake in a Mikk baker using the same high/low.
- Use Zplugin > Multi Map Exporter to automate multi-SubTool and UDIM exports when preparing large assets.
Need ZBrush, companion bakers, or guidance? Explore NOVEDGE for licensing and expert advice, and check ZBrush options at NOVEDGE when building your studio pipeline.






