PDA

View Full Version : Looking for suggestions on maya muscle collisions


a3dmonkey
11-13-2002, 11:15 PM
Hello all,

I've gotten my working protype of Maya Muscle working using a method "similar" to Yaron Cannetti's ( forgive me if I mispelled that bro ) method from the SIGGRAPH 2002 seminar. For those that don't know.....

- Modelling a nurbs sphere into a muscle shape with the top and bottom of the sphere corresponding to the ends of the muscle.

- Selecting several of the isoparms and duplicating the curvesand making them wire deforemers of the sphere.

- creating another curve to use its arc length to control the scale of the muscle via maya nodes ( yes I could do this with the dulicated curves but I went crazy and am doing it with a seperate extra curve ).

- sticking the cv's of the curves into clusters so that they can be parented to the bones

X1 -------- X2 --------- X3

with X1 and X3 being the clusters parented to the bone / joint structure and X2 being orient and point constrained to X1 ad X3 so that the center of the muscle follows the movement of the ends.


NOW HERE'S THE PROBLEM:

When the muscle twists the center of the muscle ( X2 ) will pass through the poly bones.

I've only set this system up in the arms so far and whenever the arm twists the muscle will pass through it. Very annoying to say the least. I'm looking for suggestions on how to create a " low overhead " way of keeping the muscle's center on the correct side of the bone.

Brainstorming this I've come up with 2 ideas.

1. Offseting the center of the muscle with set values. Very low cost in terms of overhead but it will need alot of customizing and testing to get the offset right.

2. Using a combination of maya nodes ( pointOnSurface, etc., etc. ) to get the coordinates at which the muscle passes through the bone and then using that to offset the center of the muscle based on the muscles point of collison with the bone surface. Ah lah Jason Schleifer's ( also please for forgive the misspelling ) limit notification from this years SIGGRAPH rigging seminar.

The first option seems like it will take longer to setup in terms of customizing the offsets for each muscle. While the second will create an increased hit on the cpu as well as forcing me to remodel my skeletal structure with nurbs ( the nodes I want to use for collison detection work only with nurbs as far as I know ). Depending on the amout of muscles present I could bog down a lil machine while it computes each muscles center point. Mind you these are just my from the hip impressions of what I could be getting myself into by setting these systems up.

I'm looking for any suggestions of ideas for attacking this problem as well as thoughts on my current ideas on ways to attack this. I'm trying to stick to a maya nodes solution and tools within maya to speed up the muscles solve time and lower the cpu hit. I know things could be cooked up with an expression but for now I'm trying to avoid them. My time is limited due to my schedule so I need to pick the best low overhead solution and develop it my first time out. A riggers dream I know .... build once and it works exactly as planned!!! hell who knows its might work first time out.

Also know that I'm writting a mel script to automate this while I'm developing it. So in the end this solution should be a button click away.

Any suggestions will be appreciated. Thankx in advance.


Michael Ware
SVA MFA Grad Candidate
:buttrock:

a3dmonkey
11-14-2002, 06:21 PM
3. Using nurbs bones, project a curve on the surface of the bone corresponding to the center line of the muscle. Then constraining the center X2 to the projected center line as well as the muscles end points ( X1 and X3 ).

Any thoughts on this??? Warnings ... ???

Michael Ware
Rigger in training,
Programmer on the side,
Animator at heart,
and
SVA MFA Candidate

:buttrock:

stunndman
11-14-2002, 07:35 PM
Any thoughts on this??? Warnings ... ???


i have saved this one for future reference - to me that's more a tutorial than something i could comment on :)

CGTalk Moderation
01-13-2006, 12:00 PM
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.