Home Youtube GitHub

RBF manager for corrective rigging


#1

Hello @Rafael. I’m keen on using the RBF manager as a pose reader for driving helper joints (instead of blendshapes) with other joints e.g. an arm joint. The reason I don’t want to use a control to drive is because the kinematics mode can change and I need the driver to stay consistent. It it possible to use the RBF manager for this purpose, i.e. corrective rigging? Thanks in advance.


#2

Hello @mwessels I do believe you can have a joint drive another set of joints with the rbf manager. I can check in the morning, I know there are restrictions on naming convention, but even if that is the case it could be easily circumvented with a simple rename on import/export or editing the json file to skirt the rules.

Let me know if this works for you.


#4

Sorry I clicked delete on my reply by mistake. Here it is again:

Thanks for the reply. Currently what happens is I select the fk arm controller as the “control” the arm_L0_0_jnt as the driver and then I select the helper deltoid joint as described in the last step on the youtube video that you should select the control you want to drive before clicking “new RBF”. That then fails to create the group above that selected node and plugs in the RBF node straight into that joint zeroing it out away from where I placed and skinned it.

My work around for this was to create a set of groups that drive the joint with a parent constraint. The RBF managar seems to work better with a transform vs a joint. The problem I then have is when I select my transform that drives the joint and try to store a pose I keep getting an error:

// Error: RBF decomposition failed

Hopefully my description is making sense. So the plan was to then rotate the control, move the transform that the joint is constrained to and the adding a pose. Sadly, this is not working :confused:


#5

@Rafael I’m going to try and use the brave rabbit weight driver plug-in directly. I think the RBF manager might have been intended for a different purpose than what I’m trying to use it for, correct me if I’m wrong? (no pun intended).


#6

@mwessels Do you have a scene you can share?

The “red tape” is unfortunately high when using the tool as it depends on mGears naming conventions. Perhaps in the future we can be a little more relaxed on the rules a bit. But that would be a bit of an overhaul.

Also, when you see
// Error: RBF decomposition failed
That is usually due to two or more poses recorded are the same or vveerrrrry similar. Basically you want to make sure your driver is in a unique in every recorded pose.


#7

Hello everyone

To explain a little bit more in depth why the RBF decomposition failed error happens is mainly because you are driving a pose purely with rotation values on so the RBF can’t decompose the difference between two poses because there is no displacement between them. This case usually happen when the driver and driven are on the same world position and you are just using rotations to create your pose. In this case you might better use the Angle Type driver from the weightDriver or the PoseInterpolator node from Maya. Ingo is aware of this and probably will do something about it in future releases.


#8

Thanks Rafael. In the end the standalone weight driver plugin did the trick. The rbf manager works great for driving controls though!