View Full Version : Double transformation problem.
Iotrez 02-18-2004, 10:14 PM Hi,
If you have a sphere with a cluster added to some of the vertices and the cluster is parented to a locator. If the sphere is also parented to the same locator, double transformation happens if the locator is moved.
I think I understand why - because the vertices on the sphere are being moved twice (by both the locator and the cluster).
But is there a solution to this kind of situation while keeping the same relationship between the objects, ie having a cluster and the object it is deforming both parented seperately to an object higher up in the hierarchy.
Thanks for any help.
|
|
dmcgrath
02-18-2004, 10:52 PM
I think you already answered your own question?
having a cluster and the object it is deforming both parented seperately to an object higher up in the hierarchy,
..double transformation happens if the locator is moved.
I think I understand why - because the vertices on the sphere are being moved twice (by both the locator and the cluster).
You can't have them parented under the same node and move the parent node. Usually when you have a cluster it is because you are moving a group of transformable points together. So moving the object and the points is counter productive. I can't think of any way off the top of my head where this is possible.
I always tell people to look at page ten of my setup tutorial to show how a well thought out organization of your nodes is really helpful, and necessary.
If you go there you can see; that even though everything is parented under one node ultimately, you can't use this node for anything except import/export purposes. messing with any of the transforms will give you unfavorable results.
I tried to think of anything, like constraints even, but they are just another form of transformations. You would have the same problems.
Maybe the next question is to ask, What do you want it to do?
There might be something that you haven't considered that someone else has already solved for you. Especially here, things have been answered many, many times on this forum.
good luck!
-dan
Iotrez
02-19-2004, 12:19 AM
Hi thanks for your reply.
The exact problem I'm having is in trying to set up the robots arm shown here.
I tried to set it up so that instead of rotating an upperarm to rotate the whole arm, the elbow structure which has it's pivot point at the shoulder is rotated.
The upper arm object has a cluster added to it which is parent constrained to a locator and the locator is parented to the elbow.
When the elbow is rotated the cluster is weighted so that as it follows the elbow the upper arm object deforms so that it looks like some kind of flexible tube.
The problem is because the cluster will be indirectly parented to the torso and the upper arm object is also, double transformation happens.
Sorry to go on but I'm stuck.
Please can anyone help find a way around this or a better way of setting up this arm?
Thanks.
http://homepage.ntlworld.com/simon.davies/CgTalkArm.jpg
dmcgrath
02-19-2004, 08:14 PM
So I guess I see what you want. But the problem is once you start adding seperate clusters, you also need a way to drive the rest of the skin. The cluster you have is there so it will create the deformaion of the flexible tube part right? But to get it to translate in space you need the rest of the arm to follow without double transforms.
You could use a joint system. It seems to me that you want to animate the geometry itself, which is harder to do than setting it up with bones. One of Maya's greatest strengths is in animation, and the easiest way to achieve it is in a bone system.
You already have the pivot point of your geometry at where a joint pivot would be located anyway. So you might want to try experimenting with joints in that area.
It could get really involved if you want it to;
but an easy way might be to just put three joints in the flexible tube area and have them all rotate in the same direction. You could make this happen with set driven keyes (if you know how).
I'm not sure if my explainations are good enough for you so let me know if you need more clarification.
-dan
Iotrez
02-19-2004, 08:39 PM
Thanks alot.
Yeah I've tried three bones in the upper arm section like you said, and then I've put spline ik on them with a point on curve where the elbow is. The lower arm joints are then controlled with FK.
THis seems to be working on the arm OK but I'm not very experienced so I guess I won't know for sure until I have the character set up completely.
Cheers.
misterdi
02-20-2004, 08:25 AM
Originally posted by Iotrez
If you have a sphere with a cluster added to some of the vertices and the cluster is parented to a locator. If the sphere is also parented to the same locator, double transformation happens if the locator is moved.
I think I understand why - because the vertices on the sphere are being moved twice (by both the locator and the cluster).
But is there a solution to this kind of situation while keeping the same relationship between the objects, ie having a cluster and the object it is deforming both parented seperately to an object higher up in the hierarchy.
Thanks for any help.
There is an easy way to handle the situation in this case to avoid double transformation of the cluster.
You can turn on relative attribute of the cluster. With relative is turned on, cluster calculation will be done base on immediate parent of the cluster handle, as long as the cluster handle relative position to the parent doesn't change it won't deform the object, that's why it's called relative.
Relative attribute mostly turned on in rigs where you need clusterhandle to be parented to joint, but you don't want it to deform the model when the joints is rotated.
Iotrez
02-20-2004, 06:18 PM
Thanks misterdi
CGTalk Moderation
01-17-2006, 11:00 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.
vBulletin v3.0.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.