Home Technical Talk

Idea for a skinning tool for Maya (or any other similar package), wondering if it possible.

I was talking with a friend recently, and an idea popped into my head but since programming or scripting is not my forte, I figured I would put it out to the public and see if anyone familiar with programming Maya (or similar design suites) would know if it is possible.

Basically, the idea was for a transform widget-like tool, but instead of the handles manipulating the world coordinates of the vertex, they move the vertex in world space according to its weight value.

An example of this idea would be, if I have a group of vertices that I might normally try to paint or manually edit their weight values to get them to where I need them to be, this tool would allow me to directly manipulate them as if I was trying to move a vertex or a face normally.

I imagine there would have to be some sort of limitation on the amount of translation you could do seeing as the weight values cannot be greater than 1 per vertex. I have no idea what kind of calculation may or may not be necessary to get a tool to behave in this way, but it seemed like an intriguing idea.

To be quite honest I'm not quite sure how to express this concept in a clearer and more concise way hahaha, but I hope that was understandable at least lol.

Thanks in advance for anyone checking this thread out!

Replies

  • pior
    Options
    Online / Send Message
    pior grand marshal polycounter
    The problem is that if more than 2 bones are involved, there are more than one way for a vertex to end up in a given position - meaning that whatever is inferred by that position is likely not going to be what you want. (I am assuming that you are talking about weight adjustments while going through a few poses different from the Tpose)

    One could also argue that such issues would be better solved by a clean joint placement in the first place. At the end of the day you are better off limiting the number of bones influencing a given vert to as low a number as possible, which then makes weight tweaking quite straightforward.

    Not trying to shoot down your idea of course - I just don't see any situation where such an approach would preferable over a clean and straightforward approach to weighting :) I'd be happy to be shown a practical situation where this would be helpful - but in the meantime I'll go back to good old carefully planned weighting, which really doesn't take that long and is quite a simple process anyways ...
  • wordedworlds
    Options
    Offline / Send Message
    pior said:
    The problem is that if more than 2 bones are involved ...
    Aha! That makes a lot of sense as to why something like this might be problematic to create. I'm not married to the idea at all, so there's no worries with regards to shooting it down hahaha. It is mostly just a flight-of-fancy sort of idea that at the moment sounded interesting. I'm unfortunately restricted to not being able to do much with the skeleton I have to work with, and sometimes when I am skinning clothing to it I find myself wishing I had a tool like this.
  • pior
    Options
    Online / Send Message
    pior grand marshal polycounter
    Heya - if you are dealing with a very simple skeleton (and of course no access to corrective blendshapes) your best bet would be to start with a very basic weight setup, maybe going as far as splitting up the model like a mannequin. Once that is done (and of course depending on the tool you use) you will able to transfer that back to the real model, and from there it should just be a matter of hitting the smooth weights button (or equivalent) a few times.

    A different approach would be to start by simply weighting everything with 0s and 1s, and then smoothing the result. It can work extremely well.
  • wordedworlds
    Options
    Offline / Send Message
    pior said:
    Heya - if you are dealing with a very simple skeleton (and of course no access to corrective blendshapes) your best bet would be to start with a very basic weight setup, maybe going as far as splitting up the model like a mannequin. Once that is done (and of course depending on the tool you use) you will able to transfer that back to the real model, and from there it should just be a matter of hitting the smooth weights button (or equivalent) a few times.

    A different approach would be to start by simply weighting everything with 0s and 1s, and then smoothing the result. It can work extremely well.
    Thanks for the tips, greatly appreciated!
  • monster
    Options
    Offline / Send Message
    monster polycounter
    pior said:
    ...

    A different approach would be to start by simply weighting everything with 0s and 1s, and then smoothing the result. It can work extremely well.
    This! When I'm under a deadline and have several characters to skin, I just do a rigid pass with a minimal blend at the joints. Then I let the bug reports fill me in on what needs polish. :)

    However, the tool you are describing sort of exists. http://www.braverabbit.de/extractdeltas/ Watch the video. Personally, I wouldn't use it for games though.
  • wordedworlds
    Options
    Offline / Send Message
    I am unfortunately not able to use blend shapes, I'm basically limited to only weighting the mesh I've been provided to the provided skeleton with the help of a base mesh to copy starting point weights from onto the clothing (usually) that I am skinning, and that's about it. To be quite honest the platform I am skinning these meshes for is incredibly antiquated, and for pretty much any other platform I wouldn't be having this kind of trouble lmao. Being pigeon-holed into this kind of situation is what is making me want a strange tool like this LOL.

    I wonder if the problem stated earlier by Pior could be partially mitigated by allowing a choice of which influences would be affected by the transform widget once the vertices are selected? The skin of course would need additional refinement, but if this sort of thing is possible, I would find it incredibly useful in a lot of situations hahaha.
Sign In or Register to comment.