Exporting custom vertex normals from blender into FBX?

I have a static mesh which is using the Data Transfer modifier to set custom vertex normals on an object. The normals look fine in Blender and produce the desired shading. Unfortunately, the custom normals are lost when exporting to FBX and are replaced by the default flat shading. Is there a way to fix this?

You need to apply modifiers on export and export using Faces, Tangent Space, then in UE4 Import Normals and Tangents.

Tried that. Didn’t work. It seems that if you have auto-smoothing turned off, it doesn’t export the Modified Data modifier. Unfortunately, having auto-smoothing turned on buggers the Modified Data.

Yeah you need auto smooth for it to work. Try applying the data transfer modifier before exporting then (and clicking the generate data layers button). Some modifiers like subsurface will replace the normals so you need to apply those first if you’ve got them.

I tried the apply modifier early on. It’s the same problem. It seems the Data Transfer doesn’t work the same as a regular modifier.

Not sure what to say except “it works for me”.

The only things you need to do are:

  1. Enable auto smooth.
  2. Add a data transfer modifier, set the correct settings (custom normals) and click generate data layers, then apply the modifier.
  3. Remove any subsurface modifiers (or apply them and do 2 again).
  4. Export with Face smoothing, tangent space ticked.
  5. Import with Import Normal and Tangents in UE4.
1 Like