Custom Expression made with Powerpose are not importing onto the FACS Morphs in Blender

Issue #2168 resolved
Thomas Burd created an issue

I don’t know if I’m doing something wrong. But I’ve saved this character’s expression as a Pose Preset.

Then when I try to load this expression onto the character. Neither Import Expression or Import Pose works with Affect Morphs Ticked. Body Morphs values import correctly however.

If there is a correct way to import a custom expression onto your character in Blender?

Comments (19)

  1. Alessandro Padovani

    A pose preset is a pose not a morph so you import it as a pose. Does your saved pose work if you load it back in daz studio ? If yes then you can upload the pose preset for Thomas to look at.

    Of course for the pose to work you have first to import in blender the morphs you use in your pose.

  2. Thomas Burd reporter

    Then I drag the pose file from my Window Explore back onto the character in Daz it applies no problem.

    I imported my character using the Genesis 9 Operator Presets in the import menu.

    The Morphs used for this pose come default with Gensis 9 and all the values match up with the FACS. Its just that for some reason these morph values are not transferring onto the FACS.

  3. Thomas Larsson repo owner

    I have never used Powerpose; in fact, I didn’t know it existed until now. It seems to define some new morphs, because when I import the file with Import Expression the following morphs are not found:

    powerpose_ctrl_BrowUp-Down 1
    powerpose_ctrl_CornerUp-Down 0.05333333
    powerpose_ctrl_Wide-Narrow 1
    

    However, there is a folder called powerpose among the G9 morph directories. I will add this to the standard morphs.

  4. Thomas Burd reporter

    Yeah it’s a bit of hidden gem in Daz. But you can add it with you add a new pane to your panels

  5. Alessandro Padovani

    4.2.1.2269, blender 4.2.0

    @Thomas, powerpose is a rig system in daz studio for FK controls.

    Usually powerpose doesn't get its set of morphs, this is unique to G9 and personally I'm surprised that it does. For the other figures powerpose drives the standard morphs or the bones, so this is transparent to the importer. As you said, in this case we can load the extra powerpose morphs from the G9 folder, but loading them as custom morphs doesn't seem to work.

    update. workaround (possible bug). If we “make hidden sliders” in the global settings then the powerpose morphs work fine. Without hidden sliders they don’t work so this may be a bug.

    steps:

    1. “make hidden sliders” in the global settings
    2. import G9 with FACS
    3. import the G9 powerpose morphs as custom morphs
    4. import the kiss pose, works fine

  6. Thomas Burd reporter

    Yeah, it’s working now, Glad I helped you discover PowerPose. It will help a lot of people make custom expressions.

  7. Thomas Larsson repo owner

    The powerpose morphs are hidden, presumably because they are accessed through the powerpose template in DS. That doesn’t make much sense in Blender. The plugin therefore overrides the visibility for these morphs, so they show up in the morphs panel even if the Make Hidden Sliders option is disabled. And since the morphs are hidden in DS, they don’t have nice labels to be displayed. To make the sliders a bit nicer the initial “"powerpose_ctrl_” string is stripped from the morph names.

  8. Alessandro Padovani

    Nice. Can you make the same for flexions ? That would make sense, since we can use flexions with a multiplier to override the driven muscles and “pump up“ the figure. Now flexions are hidden unless we unhide all morphs.

    Also, the forced visibility would be better as an option, if possible. So we could have options to make powerpose or flexions always visibile, or not.

    Let me know.

  9. Thomas Larsson repo owner

    The missing flexion sliders was a bug. The sliders were created but then removed when jcms are optimized. Now jcm optimization doesn’t apply to flexions anymore, and the sliders appear.

    Since the forced visibility only affects powerpose, I don’t think it should be optional. In DS you can change the morphs with the powerpose interface, I supposed. In Blender there is no such interface so there is no nice way to change the powerpose morphs without the sliders.

  10. Alessandro Padovani

    Commit 5bbf740.

    Thank you for the fix, but I wasn’t using the optimized jcms. Unless we make hidden sliders, we only have flexions for glutes and quads, plus quads don’t work. If we make hidden sliders then flexions work fine. My proposal was to make all flexions always visible same as powerpose.

    Let me know.

    bug. adjusters don’t work. It seems adjusters are limited by the final limits, this can’t work because we need final limits = daz for poses to work fine. So adjusters should ignore the final limits, otherwise they can’t work. The multiplier works fine it ignores the final limits.

    steps:

    1. in global settings make hidden sliders and limits = daz
    2. import G8 with flexions and adjusters
    3. try to use the adjuster, it doesn’t work

  11. Thomas Larsson repo owner

    I was testing with G9 which has proper sliders for all flexions. For G8 only a few flexions have sliders as you say. Now sliders are added for all G8 flexions as well.

  12. Alessandro Padovani

    Commit 9838897.

    Thank you, flexions work fine for G8.

    bug. adjusters. Adjusters don’t work with daz limits, as explained above. The multiplier work fine.

  13. Thomas Larsson repo owner

    I don’t think that it is possible to make adjusters affect the limits. The final limits are implemented by the min and max values of an armature property, and also by the min and max values of shapekey sliders. The shapekey limits could be driven by the adjuster, but I think I tried that before and it had unwanted consequences. The property min and max values cannot be affected by adjusters even in principle, I think. At least there is no “Add driver” option when I right-click on them.

    If you need to add adjusters (I rarely do, it was something Engetu requested), set the final limits to none or custom.

  14. Alessandro Padovani

    The daz poses only work with limits = daz, if adjusters can’t work with this then they’re pretty unuseful. However, the multiplier works fine with limits = daz, in that it goes outside the daz limits. If it is possible for the multiplier it may be possible for the adjusters too, since the multiplier is just a “global adjuster”.

    Let us know or we can close as resolved, if you’re positive that adjusters is a known limitation and not a bug.

  15. Thomas Larsson repo owner

    I agree that adjusters are not very useful, and they make the drivers more complex. Implementing them was really a mistake in the first place. Engetu requested a different kind of adjuster, but I misunderstood what he was talking about. Maybe they should be removed completely.

    Engetu’s adjusters are enabled with the Use Adjusters checkbox in the import custom morphs tool. If your character is a mix of Aiko and Victoria, say, you can import the custom jcms for both, and then set the adjusters to reflect the mix. That kind of adjusters should typically be between 0 and 1 so don’t have problems with limits

  16. Log in to comment