Mhx Snap IK/FK Arm/LegsBones not working.

Issue #419 resolved
Eder Rogerio Deana Juliette created an issue

In the last commits, when I try to snap IK/FK for arms or legs with MHX armature I got this error. Tested with blender 2.92 e 2.93.
Switching is ok.

Comments (16)

  1. Thomas Larsson repo owner

    There was a design change in the MHX rig a few days ago: the driving properties were moved from the rig object to its armature. The reason is that the new morph system caused dependency loops in the MHX rig, which disappeared when the driving properties were moved to the armature level. FK-IK snapping should work with an MHX rig generated after this change, but not with older rigs (from ca March 16 or before).

    For the time being you have two options: either regenerate the MHX rig, or stay with an older build. Eventually I will provide a conversion tool.

  2. engetudouiti

    If Thomas will offer conversion tool I really apreciate.

    At same time, ,I may hope someone will test, even though attach custom prop for rig.data, override and proxy work as same as before. (though blender rig override still have a few problema which reproted (eg multi character override)

  3. Eder Rogerio Deana Juliette reporter

    Thanks for the prompt answer, Thomas. Before opening the issue I tested with both old and fresh imported models. At least for Genesis 8 Male and female importing a fresh new model even with the last commit 48e63dc, the problem persists. Unless I'm missing something, it's a bug in the addon.

  4. engetudouiti

    Thomas you seems forget to change , in fk-ik.py line 246

    def setSnapProp(self, value, context, isIk):
        words = self.data.split()
        prop = words[0]
        oldValue = getattr(self.rig, prop)
        self.amt[prop] = value
    

    From attached error image, you may need to change

    oldValue = getattr(self.rig, prop) as (self.amt, prop) or (self.rig.data, prop) I suppose.

  5. engetudouiti
    fkik.py which edit getattr ()  1st arg  from rig to amt
    

    there are 2 place,getattr() used int the fkik.py I needed to edit both. then now it work. (I confrimed OP issue with recent commit)

  6. Thomas Larsson repo owner

    There is now an Update MHX button. You cannot miss it, it is the only thing in the three MHX panels until the rig has been updated.

    On a related note, the value of the final properties are now hidden by default. They cause errors for old rigs, like the old MHX rig that I used to test the update button. The Show Final Sliders option toggles them on.

  7. engetudouiti

    Thanks quick up-date. about Final value option, It seems no problem , Then after show final sliders (label?) , Do I need to change setting again when I import old daz rig scene? or it only matter when I load old MHX rig scene?

  8. Eder Rogerio Deana Juliette reporter

    It works nicely now. And the extra button for the update of old armatures it's a great touch too. Thanks for the work here Thomas.

  9. Eder Rogerio Deana Juliette reporter

    One little side effect. It's not a bug and I'm not sure if I should open another request to deal with it. In the previous version, if we had an armature set to Ik when importing a pose, it changed automatically to FK to conform to the imported pose. Now it's need switch from IK to FK before or after import the pose to see it correctly. It's not really a problem. But, may not be obvious for whose was used to the old system.

  10. engetudouiti

    I remember, there should be option, to effect pose only selected bone, without change all bone as FK.

    There is case I may hope to keep leg bone as IK and only apply pose for upper body part. then I requested it so.

    But do not clear remember if you do not select any bone, how add on work. I may approve, if add on auto set FK when we not select any bone. but hope to remain, the merge pose option (keep hand or arm as IK then stay as same as before, or only apply pose for selected bone (so selected bone only change as FK then apply import pose)

  11. Eder Rogerio Deana Juliette reporter

    The option “selected pose” is for what it says. It applies the pose only to selected bones, so we can get partial poses from an entire pose. It's not related to the current question.

  12. Eder Rogerio Deana Juliette reporter

    As engetudoiti said, to return/switch each arm and leg to IK or FK as they were set before applying the pose would be appreciate. But if not possible, I think they should all be set as FK to show the correct pose, as it used to be.

  13. engetudouiti

    Ah ok, as my side, your suggestion is reasonable. ( change limb setting as FK then load pose for MHX) when we import daz pose.

    There had been some conversation how it work , when I requested to add “selected only option work for MHX” At that time, I might said, ,” it depend user, to set bone as FK untill import pose” ^^;

    because Daz pose file made for FK bone, so I felt, it depend user, to set as FK when import daz pose.

    I may approve, change as FK about all Arm and Leg, , then import pose.

  14. Alessandro Padovani

    As I understand it, mhx is to be used in fk mode to import daz poses and animations. That’s the same the daz rig does. Unless I miss something that’s entirely possible since I didn’t play with mhx a lot. Is there a feature to “track” ik goals and poles to fk animation ?

  15. Eder Rogerio Deana Juliette reporter

    The state of IK/FK after importing poses is a minor question and not related to the main question for which I opened this issue. The main question looks quite solved for me. So I'll mark this one as solved and open a new one for the second question.

  16. Log in to comment