Welding Normals

When you look at the Avastar Character you might have noticed that  the entire avatar looks like it was made of one mesh. There are no seams between head, upper body and lower body.

But actually the Avastar body is made of 3 meshes. And normally one would expect to see seams between the meshes. So what is the trick here?

The answer is: We use Blender’s Data Transfer Modifier for welding the edge Normals of adjacent objects.


The Data Transfer Modifier

You have to make 4 settings here:

  1. Define the Target Mesh (Upper Body here)
  2. Enable Face Corner Data
  3. Enable Custom Normals
  4. Set the Max Distance of influence to a low value

I explain below in more detail what the 4 settings do


Define the Target Mesh

We want the Normals of the head (where the Data transfer Modifier has been added) to be aligned to the Normals of the the Adjacent Upper Body (the target mesh)

You see in the image that the Normals of the adjacent mesh vertices do not point in the same direction. Hence you usually get visual seams at these locations.

  • The Target Mesh is the UpperBodyMesh



Enable Face Corner Data

I must admit that i do not know exactly what the term Face Corner Data means in this context, but this enables the modifier to copy the Normals from the other object

  • Enable Face Corner Data


Enable Custom Normals

Normally Blender takes full control over the Normals of its meshes. But the Data Transfer modifier attempts to modify the Normals by adjusting them to the target mesh. This setting prepares Blender to maintain those modified custom Normals

  • Enable Custom Normals


Set the Max Distance of influence to a low value

By default the Modifier attempts to modify all Normals of the active Mesh. However in our case we only want to adjust the Normals on the edges. So we can reducethe modifier influence range to a minimum. You get the best match of course when the adjacent objects have vertices at the exact same locations.

In that case the range of influence can be set to a minimum

  • Set the Max Distance of influence to a low value (0.01)

Important: By default the range of influence is disabled. You can enable it by clicking on the icon on the right side of the button


Note: Please always enable this option. Otherwise the Normals do not get exported.

And the final result is a set of nicely welded Normals that make the two adjacent meshes look like only one single object. Mischief accomplished.


The Data Transfer Modifier copies the Normals over. It does not average the Normals! This may be important to know when you for example try to combine your mesh head with the Mesh body of another creator!

Avastar hs its own welding function that can be enabled during Exporting of the meshes. This welding function is averaging the Normals instead of copying them. In some cases you might prefer the averaging over the copy as done by the Data transfer modifier.