PDA

View Full Version : Maya wont mirror weights properly


JaredTaylor
03-20-2009, 12:27 PM
Maya's mirror weights tool is totally and completely useless... it isn't even remotely accurate... I try to use it frequently after finishing certain parts, as a result, my mesh isn't weighted the same on both sides... I have tried every single freaking option in the option box next to the tool... nothing is accurate... at all...

This isn't remotely acceptable for professional software.

Is there a better program out there that I should be using to rig? Maya is so bugged :/

Even importing weights that you just exported without making any changes to can cause a LOT of problems... When it SWITCHED my left and right shoulders I tried exporting and importing while changing the left/right file names in between and it screwed up my arms entirely.

This is like trying to drive a boat to africa with a $5 engine. Any solutions are welcome :)

All I want to do is have the tools to weight properly, ones that actually work. Sob. Just trying to get it into motionbuilder with proper deformation...

Buexe
03-20-2009, 02:11 PM
it might be worth checking out the smooth skinning sticky thread in the maya character rigging section.
Regarding your problems when mirroring: in my experience maya searches for the mirror transform by looking at the world positions, thus if there are two on the exact same spot (which happens regularly) this technique fails, there was a script somewhere to overcome this.
Regarding import export: it is pretty exact if you provide good UVs ( non-overlapping, between 0 and 1). If your model doesn`t have one yet or you don`t want to change it, create a second UV set with auto-mapping and activate it before ex-or importing.

JaredTaylor
03-20-2009, 04:04 PM
That explains the importing/exporting problem, should of seen that myself - I use overlapping UVs for my game character to save space.

I will check the thread, thank you... I think my frustration is showing in my first post.

Buexe
03-20-2009, 04:30 PM
and try David Walden`s skinningTools MEL from highend3d.com. it makes the whole process less painful. And if I remember correctly there are functions for mirroring and import/export.

JaredTaylor
03-20-2009, 04:41 PM
thank you, i shall try it :) i am so very new to this

i put the script in my docs\maya\2009-x64\scripts folder, what do i do with it now? figured it'd have a menu under animation like comet tools do =/

edit: looks like highend3d has a very old version

NolanSW
03-20-2009, 04:42 PM
If you are trying to mirror weights at the object level (just by selecting the mesh and mirroring) then there may be cases where the results are less than what you wanted. As far as needing to have UV laid out first is not true. Back when I was working on games, I'd get a model that had no textures or UV's on it yet so I could skin and do the setup while the modeler was working on the UV's and such. Once he was done I would transfer the weighting over to the new model with the new UV's.

So during the early skinning stage I would instead do mirroring at the component level. By selecting the vertices that I wanted mirrored would only mirror the weights for opposite side. I wrote a simple script that when I selected the mesh, it would select all the verts and then do a mirror weights. Have one2one for both options for mirroring.

Use this technique has proven to work quite well and I never mirror at the object level any more. This works in those cases where points or joints are sitting right on top of each other.

Give it a go and let me know if that worked for ya.
-Sean

BTW- I did a video tutorial a few months ago to show how to copy/transfer weighting from one mesh to another in case you need this.

http://www.vimeo.com/2857705

JaredTaylor
03-20-2009, 04:57 PM
Thanks NolanSW, I had no luck.

Here's what I did:

1) I went into vertice mode and selected half of the model (including down the center).
2) I selected the 'Mirror Skin Weights' option box and used these settings:

Mirror Across : YZ
Direction: Positive to negative ticked
*wrong?* Surface Association: Closest Point on Surface
Influence Association 1 & 2: One to one.

3) Checked the weights... nothing changed.


edit: can't figure out how to get that script to load. it's in my scripts folder, but nothing seems to work when i execute it using source "skinningTools.mel".

Keithtron
03-20-2009, 05:19 PM
I've never had problems with Maya's weight mirroring. Are you sure that your model is perfectly symmetrical? It might look symmetrical, and still be a little off. There's an abSymMesh script floating around online that's extremely helpful for checking symmetry and properly mirroring your geometry. It's super handy, and should be pretty easy to find. Also, as someone mentioned, if you have 2 joints on top of each other it could screw things up. (I'm just starting to rig with overlapping joints now, so any tips or input as to what I should watch out for would be much appreciated. :))

So you've taken care of your import/export problem, right? It sounds like you're already using the Comet tools, so why not use the Comet weight import/export? It's very handy, and it stores vertex/weight info by global position and vert #, so it's not dependent on UV's at all. That's really important for me, because I usually rig models before they're textured. When rigging a character it's not uncommon to need to go back and make changes to the model, so it's best to save texturing until after rigging is complete, since the mesh will be much more locked down at that point.

JaredTaylor
03-20-2009, 05:28 PM
My model has been perfectly symmetrical from the day it was a cube. I already thought of that and started over completely with the rig at an earlier point, same result :/

Import/export isn't a problem anymore, thanks :)


Edit: not sure how to use the scripts, tried executing them but no menu comes up or anything.


Edit2: Can I PM my scene file to someone to have a look at? would really appreciate it.

Buexe
03-20-2009, 05:41 PM
If you are trying to mirror weights at the object level (just by selecting the mesh and mirroring) then there may be cases where the results are less than what you wanted. As far as needing to have UV laid out first is not true.

For importing and exporting weights using maya`s interface it is very true. Of course you don`t need UVs to paint weights.

NolanSW
03-20-2009, 05:48 PM
Hmmm...the technique I described has worked for me before. Maybe try and select all the vertices and mirror. If it still doesn't work then possibly the other side is missing influences.

Again, this worked fine when I had joints right on top of each other. I had 2 joints that would sit on top of each other when doing eyelids and when I use to try and mirror at the object level the weights would not be assigned correctly. It wasn't until I used the component mirroring did it come out correct.

Edit: Sorry, yes you would need UV's if using the import/export from Maya which I never use just because of that.

If you want to pm me with the file I would have no problem taking a look.

JaredTaylor
03-20-2009, 06:14 PM
thanks nolan, pm is incoming :)

MolemanSD7
03-20-2009, 07:10 PM
Yeah... Nolan's awesome. He's helped me out with some things in the past. You should check out his Blog too: http://www.snolan.net/

NolanSW
03-20-2009, 07:35 PM
Aw, Thanks Sean! :wavey:

theflash
03-20-2009, 09:47 PM
I don't have a good experience with Maya's mirror weight function. For some models even if they are perfectly symmetrical it does not work and it will not work by any mean. I had to paint weight manually. The model I had problem with had some vertices in very close distance (lip corner). I am developing my own solution for this.

JaredTaylor
03-21-2009, 09:37 AM
Thanks everyone... everything is working perfectly now :)

Couldn't have done it without you all :wavey:

A final question; if I really want to pursue rigging, what tutorials should I watch? The software I will learn to animate in is motionbuilder.

RumorHazard
03-21-2009, 06:39 PM
Hey,

I would highly recomend The Art of Rigging it is sold on autodesk website, I have been working my way through it and its brilliant!

c000be
03-24-2009, 06:38 AM
you also want to make sure the mirror paint in your paint weights brush is off. if you only painted one side it should already be off, but just in case.

CGTalk Moderation
03-24-2009, 06:38 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.