Substance Painter
In this start to finish texturing project within Substance Painter we cover all the techniques you need to texture the robot character.
# 1 16-06-2015 , 10:03 AM
Registered User
Join Date: Jun 2015
Posts: 2

Make vertex normals point in same direction

Hey guys! My first post on this forum, glad to be here!

I have a problem with the 'average vertex normal' command.

I have a human mesh, separated into two parts - head and torso.

On the edge where the head and torso are connected, the vertex normals point in different direction,
which makes the shading inconsistent. Easy fix, I thought. I selected all the vertices on torso and neck edges, then issued the 'average vertex command'. However, the results are not as expected, the vertices still point in different directions as you can see on the image below:

I just want to make the normals point in the same direction. I also tried combining the mesh, running the average command through all the vertices (which fixes the shading problem), but when I try to transfer attributes back to the separated mesh, it just turns black... This issue has been frustrating me for the last couple of days, so I would really appreciate any help! How to make vertices on two separate meshes have the same angle? Thanks so much!

Attached Thumbnails
# 2 18-06-2015 , 11:03 PM
mtmckinley's Avatar
The Maya Mountain
Join Date: Aug 2002
Location: Seattle, WA
Posts: 8,245
Just curious, is there a reason you don't want to combine the meshes together? If you combine the mesh and then merge the vertices at the seam (so that instead of having 2 stacked verts along the seam, you merge them down to 1), it should fix the issue after softening the normals on the new edge that is created.

# 3 22-06-2015 , 07:30 AM
Registered User
Join Date: Jun 2015
Posts: 2

Just curious, is there a reason you don't want to combine the meshes together? If you combine the mesh and then merge the vertices at the seam (so that instead of having 2 stacked verts along the seam, you merge them down to 1), it should fix the issue after softening the normals on the new edge that is created.

The reason are blendshapes on the head. I might to extensive modifications on the torso in the future, and having head and torso separated saves me from a lot of potential headaches. Thanks for your advice!

# 4 24-06-2015 , 02:20 PM
mtmckinley's Avatar
The Maya Mountain
Join Date: Aug 2002
Location: Seattle, WA
Posts: 8,245
I see. What I've typically done in the past with head blendshapes is use the character's clothes or some other obvious "divider" between the head and the body as a geometry seam. Like if the character has a shirt on, the shirt can cover the seam where the head geometry is separate from the rest of him. Even if that means the head geometry goes partway down his chest, the seam will be hidden by the covering clothes or whatnot.

If you're not planning on using clothes, you could try doing as I suggested (combine, merge, soften) and then extract the faces. Hopefully the normals will still match enough after the extraction.

Another option would be animated the face with a skeleton rather than blendshapes, but I can understand if that's not an ideal alternative.

# 5 24-06-2015 , 03:12 PM
NextDesign's Avatar
Technical Director
Join Date: Feb 2004
Posts: 2,988
You can do this in the following way, however be warned that it's a bit fragile. You can't edit the geometry after this, or delete the history.

Once you have all of your blend shapes connected, simply combine the target head and the body into a single object and smooth the normals. The history dependency will keep the blendshape intact.

A better way would be to write a script that would take the vertex normals from overlapping vertices and average them.


Imagination is more important than knowledge.
Posting Rules Forum Rules
You may not post new threads | You may not post replies | You may not post attachments | You may not edit your posts | BB code is On | Smilies are On | [IMG] code is On | HTML code is Off

Similar Threads