Wire deformer causing excess transforms in rig

Wire deformer causing excess transforms in rig

andrewd638
Explorer Explorer
515 Views
6 Replies
Message 1 of 7

Wire deformer causing excess transforms in rig

andrewd638
Explorer
Explorer

So I've seen a few posts about this topic but none with coherent or definitive/universal answers. The short of it is I created a wire from polygon edge, converted it to a wire deformed edge to control geometry (an eyebrow) and have been unsuccessful with it post set up. In the bind pose the deformer works perfectly, but the second the head moves in any direction it sends the wire deformer and eyebrow geometry flying in the same direction. 

I have tried with freezing, deleting history, grouping, and rearranging within the hierarchy to no avail. I want to know if anyone has run into this issue and would be able to walk me through what the fix is, I have spent literal days trying to troubleshoot this with no sense being made of it. The rig I am using is relatively simply (and I can provide images if need be), but it's a human with a 2-section neck joint set up (neck, skull, jointX) where the eyebrows are parented under the skull joint. I have done the wire deformer with it existing outside of the rig, within the head animation controller, and even directly under the skull, none of these solved the issue even when fiddling with settings of the wire.

0 Likes
516 Views
6 Replies
Replies (6)
Message 2 of 7

Kahylan
Advisor
Advisor

Hi,

 

Whenever you create a wire deformer, there is a second hidden curve created with the same name as your wire curve and the ending of BaseWire. (so if your wires is called "wire" it would be called "wireBaseWire") The wiredeformer calculates deformation based the delta coordinates from the wire points to the BaseWire points, so the difference between the two curves is what gets calculated as deformation. If you put the BaseWire at the same position in your hierarchy as your wire, you should not have double transformations.

I hope it helps!

0 Likes
Message 3 of 7

andrewd638
Explorer
Explorer

Hi Kahylan, thanks for the reply! So, I have tried this a few times and it seems like that wasn't the fix, but there is a chance that I am mucking up the process of setting it up and getting it into the hierarchy. Ill add an image of what the issue is (should've started off with that :p), but to elaborate further; I convert the edge from the face heads mesh to a curve > set up the wire deform with the curve and the eyebrow mesh. The eyebrow exists in the skull's hierarchy, and I have had both wires on the same level as it, above, and below. I've even placed it under the curve controller where the skull group resides and got even more transformations on it than just under the skull joint setup. 

Wire Deform issues.jpg

 This image shows the overall hierarchy after having put the deform wires under the skull, and the mesh of the head and eyebrow. The wire curve was made from the edge directly below the eyebrow. I set the driven position forward to show how far it deforms, it varies depending on which direction/rotation I give the neck joint system, but overall, I have not found a way to make this work. The wrap deformer worked more successfully, but since I'm using limited faces on the heads mesh it deforms abnormally. Am I missing a point where I freeze the curve that's used as a wire or am I not supposed to freeze at all (I've done both and haven't found success, but I feel like I have fused approaches at this point and have missed the proper way to do it)? Any help is appreciated.

0 Likes
Message 4 of 7

lauri_barnhart
Autodesk
Autodesk

@andrewd638 - Welcome! Thanks for your question.

 

Just checking in - has your issue been resolved?

 

If you've found a solution, please share it here so other users benefit from the information.

 

If not, please provide an update so other members can jump in with further suggestions.

 

Best,

 


Lauri | Community Manager
0 Likes
Message 5 of 7

andrewd638
Explorer
Explorer

No, the reply provided by Kahylan didn't seem to fix the issue, but was appreciated nonetheless. If there's more detail regarding freezing transformations and chronology of when to set the hierarchy up properly (if applicable) or anything else regarding properly setting up the deformer then I may be able to properly diagnose where the problem is coming from, but other than that I have provided some more context regarding my issue in a reply to this thread just before yours. 

I've seen others have similar issues in some of the other threads within this forum, but none of those accepted solutions seemed to work for me. One bit of context I may have forgotten to include initially is that I am working with Maya 2026

 

0 Likes
Message 6 of 7

Kahylan
Advisor
Advisor

Sorry for the late reply, the last few days were a bit crazy.
The picture you sent helped me understand the issue, I think. I thought you had double transformations of the geo only. But since the wire is moving further, I think you probably have a cyclic hierachy connection. When you create a curve from a mesh using Modify > Convert > Poly Edge to Curve. You create a "polyEdgeToCurve" History node. This node will try to keep the curve where the edge is and deform it so it stays on the surface. When you then create a wire deformer onto the surface, you are now deforming the points that try to deform the curve by deforming the curve, therefore creating a cycle that wants to keep deforming further and further. Sadly I can't be sure, because I don't see your channelbox so I don't know what types of nodes are in the input.
Before you create your wire deformer, select the curve and Use the Edit>Delete By Type>History command on it, to break the connection of the Surface into the curve. Then create the wire deformer and afterwards put them into the same hierarchy as you have them in the picture. That should work. If it doesn't you'll probably need to set up the wire on a local blendshape, but that is a lot more complex, so I will explain that if this approach fails.

As to your question of freezing the transformations. I would not do that. Freezing the transformations of the curve, messes with its pivot matrix and there are some deformers that don't like that, I'm not sure if the wire deformer is one of them. If you want all your values to be 0, I would instead make an offset group above it with the following steps:
1) create an empty group
2) put it under your curve
3) set all its values to 0
4) unparent it
5) parent the curve to the group.

Then you can just put the group in the hierarchy where you need it and have nice values on your curve, while still preserving its world pivot matrix.

I hope it helps!

0 Likes
Message 7 of 7

lauri_barnhart
Autodesk
Autodesk

Hi again, @andrewd638,

 

I hope you are doing well. I see that you have received another reply by Kahylan providing more information to your problem. Did the latest reply help resolve your issue? If it did, please consider clicking on 'Accept Solution' on the post that helped resolve the issue you were facing.

 

If you still need additional help, please comment here so that others in the community can jump in to help.

 

Best,


Lauri | Community Manager
0 Likes