I work with avatars that are created in external software and they have a consistent topology and vertex order but often are not perfectly symmetrical. In 2.83 I was able to add two Shape Keys, mirror the second one by topology, and then do a 50% blend to achieve a nearly perfect model, often in an A-pose. Avatar with a Basis and a second shape key that is mirrored base don topology

In Blender 2.8x this worked fine, except for 4 verts at the knee, which are easy enough to edge slide one way and then edge slide 50% back to the middle. Not perfect, but pretty damn close. After 2.8x I get 60 verts that fail and they are random throughout the mesh. It doesn't seem to be related to the import process as the OBJ import script appears to be unchanged. I get similar failures when trying a sculpt or mesh edit with X topology mirror turned on. I can keep a copy of 2.8x around just for this purpose, but it would be great if I can figure out what changed and figure out if it can be edited/fixed.

Changing the mesh in terms of vertex or face order is not an option as there is an established pipeline already using these exported meshes. So, no edits or deleting and adding back verts like you might do to use a mirror modifier. I've tried the addon referenced in this thread, but it didn't work on these meshes (maybe too complex). Using the Symmetrize function also inverts the normals, and if you flip the normal back before joining as a shape key the resulting mix is a bunch of verts squished to the 0 X position.

  • $\begingroup$ Not the answer you're looking for, but, failing all else, delete half the model and throw a mirror modifier on the other half. Takes a few steps, but It works. $\endgroup$
    – R-800
    Jun 9, 2021 at 1:15
  • $\begingroup$ It does work to make a symmetric avatar, but it doesn't help in this case as it resets the vertex order. I might try it again using the mentioned script and see if that resets the order after applying the mirror modifier. But so far I haven't been able to get a good result using the script. Also, the centerline of vertices in the avatar is not aligned to the 0 X position, so it would take some manual adjusting first of those verts. It also mirrors one side over, instead of averaging the two sides. But one could mirror two versions, a left biased and right biased, and then average those. $\endgroup$ Jun 10, 2021 at 3:19
  • $\begingroup$ Maybe use Snap to Symmetry instead, under the Mesh menu in Edit Mode. It gives you some sliding scale options that allows you to achieve an averaging of the vertex positions between each side. $\endgroup$
    – R-800
    Jun 14, 2021 at 16:24
  • $\begingroup$ Not a bad option, and one I had not tried for some reason, but alas it doesn't produce great results. Many vertices on both sides are out of whack. I will try that tool on some other hard surface models in the future to see how it works. $\endgroup$ Jun 16, 2021 at 1:32


You must log in to answer this question.

Browse other questions tagged .