PDA

View Full Version : Mirroring Morph issue


zacleck
07-18-2009, 06:47 PM
I'm attempting to make a couple of UIs for a morph based facial rig and I can't get a clean mirror script so I can flip these morphs.

I have a big set of left side morphs and I've tried the script that Paul Neale runs on his cg academy discs, I tried the "Santa Mirror Morph" script and they both mirrored it perfectly, then paused, then threw half of the verts to the default head's locations. I also tried the Morphix script which just wouldn't run on max 2009.

For some of the simpler morphs I was able to manually realine those verts that shot out of place, but with some of them that's just not an option. Is there a fool proof method to mirroring morph targets? Everywhere I read said one of these three scripts worked perfectly for them and as far as I can tell I'm taking all the right steps but the morphs aren't mirroring properly for me.

Someone help?

zac.

Leffler
07-19-2009, 12:29 PM
i use this one, works fine

http://www.highend3d.com/maya/downloads/mel_scripts/animation/ntMirrorBlendShape-4310.html

scroll-lock
07-20-2009, 02:30 PM
I was just gonna reply with a shameless plug about my script, but then I saw you need one for Max instead of Maya
mpMirrorBlendshapesUI.mel (http://scroll-lock.eu/index.php?option=com_docman&task=doc_download&gid=13&Itemid=28)

But then, I suppose you can modify the same script to work with Max - it's based on the wrap deformer in Maya. But oh well....

zacleck
07-20-2009, 05:54 PM
yeah, the maya script that i found worked swimmingly but for some reason this mesh isn't working in max. so i'll just export the whole set after i mirror them in maya. kind of a pain but oh well. thanks for the maya scripts you guys.

PEN
07-21-2009, 02:24 PM
I'm just working on one that will handle one symmetrical meshes without the use of skin wrap.

What it does is locate all the verts with matches and does a straight mirror on them but the ones that it doesn't find a match for it finds the closest three and builds a weighted transform matrix from them so it will average the position based on those three. I hope to have it done soon.

uiron
07-21-2009, 03:10 PM
i have something you might put to good use, it basically does what Paul said,avoid using wrap deformers, except that it uses barycentric coordinates for EVERY vertex instead of of those that aren't symmetric, this just makes mirror data initialization much faster.

http://www.neglostyti.com/media/other/morph%20utility%20dialog%20barycentrics.ms

Tool is not documented like it should be, but basically you should have one copy of the mesh in the "neutral" pose, you use it to build mirror data ('build symmetry info' -> click on the "neutral" mesh).
while in vertex mode, you can test how mirror data was initialized: pressing "select left" should select what should be vertices on the left, similar applies to "select right".

after that, you can use the tool to mirror changes from one side to another. "left to right" copies changes from left side to the right side, vice versa for "right to left", "swap" inverts everything (left to right and right to left in one go).

some more limitations: model's pivot should be exactly on the symmetry plane of the model. mirroring is done in X axis only.

Use (or not) at your own risk. Tested on max 2008. I do not accept requests for changes:]

AsaMovshovitz
07-21-2009, 03:41 PM
try polyboost symmetry tool - always worked for me or Transmographier.

floatingworld
07-21-2009, 04:22 PM
I thought max2010 had a new mirror morph tool on the ribbon. Am I mistaken? HAven't had time to install this yet. Anyway, why bother with mirror morphing - it just creates a lot of problems. Why not sculpt symmetrically, then use vol select with fall off to apply the morph to only one side of the face? I made a script that does this automatically, called 'split morph' you can find it on script spot udner facial animation.

PEN
07-22-2009, 01:42 AM
Yes Max 2010 has a mirror mesh tool built in and it is found in the ribbon.

CGTalk Moderation
07-22-2009, 01:42 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.