mirrorVertex is a tool essentially designed for getting symmetric blendShapes, or making mirrors of your allready created blendShapes...
now it has been compiled for maya 2008 beside the old versions...
Installation
Windows:
put the MV_CreateLUT.mll to c:/program files/autodesk/mayaX.X/bin/plug-ins directory
put the mirrorVertex.mel to my documents/maya/scripts directory
Linux and MacOsX:
I didn't compiled the plugin for Linux nor MacOsX, so Linux and MacOsX users could use the MEL search function instead of API...
Usage
create your object to be blendShaped
your object must be as symmetric as possible ( but not need to be scientifically symmetric )
duplicate it, rename the new object to baseObject, it is for you to remember that this one is the duplicated one, so you never touch this object, because it contains the symmetry information
open the script UI by typing mirrorVertex; to the commandLine
select the baseObject and click ! SET BASE OBJECT ! button
as soon as you press the ! SET BASE OBJECT ! button the MV_CreateLUT plugin will calculatethe required ID Table for matching vertex IDs ( in my athlon64 3000, the calculation takes 0.01 seconds for 1000 vertices, and about 0.60 sec for 20000 vertices, so it is fast enough!, but with the MEL search function it will calculate in 30 sec for 20000 vertices - by the way I optimized it a lot, it was about 200 sec when I first started )
the calculation of the ID LUT is for one time only job
to mirror your object:
select the blendShape target you want to mirror than hit mirror
to reflect the position of the vertex to the other side to make a symmetric blendShape target:
select the blendShape targets vertices that you want to make symmetric and then hit reflect
if you have some problems in those vertices lying in the symmetry axis (center), that means your vertices are not close enough to the symmetry axis, to fix this:
before using mirror or reflect,select one of the edges of the baseObject at the center, convert the selection to edge loopand than convert the selection to vertices ( don't forget we are working on the baseObject but not changing it, only making the script to calculate some numbers)
then hit get tolerans button
it will calculate the distances of that selected vertices to the symmetry axis, and then it will set the tolerans to a plausible number ( tolerans number is for the vertices lying on the symmetry axis, not for the other vertices )
as soon as you hit get tolerans it will create a new ID LUT
use mirror or reflect button to continue your blendShape creation,you shouldn't get any other problems
"use MEL" check box causes the script to use the MEL search function instead of API version, it is much slower than the API version, but it can be used in any version of Maya including the other operating systems like Linux or MacOsX
Known Issues
Because, I use xform mel command to move the vertices to their new position, it gets too slow to move them sometimes (about 2000 vertices is enough to get in to the slow area), be patient and wait... I'll replace that part of the script with an API version so it'll work much more faster...
The original idea belongs to Bora Dayioglu, I only efficiently programmed the tool in C++ and add some little tweaks to the workflow... we are using this tool in our production pipeline very heavily in Anima