JCMS could be fairly heavy.
I purchased that addon (JCMfix) yesterday. Apparently, it only works with G3 and G8 figures, with all the JCMs hard-coded by name in a dictionary. So, it can't be used with G9 at all. However, I tried adding the JCMs from G9 there. And it still was useless. The instructions to the add-on aren't well written. The addon instructs you to export the figure with Unity's FBX exporter and then supposedly use the FBX file. However, material settings get all lost there, as well as the structure of the prefab that the DTU addon sets up (should I manually set up all materials?). The add-on assumes you only have 1 MeshRenderer, but with G9 there are 6 (including not just eyelashes but also the mouth, eyebrows, tear etc). So, I couldn't figure out where all those extra meshes should go.
Then I discovered a more basic problem: JCMs just don't get exported correctly. You get the blend shapes if you export a JCM as a morph. Yet it just has different results. E.g. for thigh twist z45, in Daz the
body_cbs_thigh_z90p_l hidden morph in Daz would be set to 50%, together with several other morphs with names like
BaseFeminine_body_cbs_thigh_z90p_l, depending on which figure proportions are set up). If you set up the same values for blend shapes in Unity, the correction of the skin is not enough. You have to set something like 75% to get it look like in Daz.
Then this morning I found out that, in G9, none of the JCMs are as simple as they were in G8! G8 just has
pJCMThighSide_85_L. It's a single morph that's controlled by the z rotation of
Left Thigh Bend bone. But in G9 the
body_cbs_thigh_z90p_l is a combo of several morphs, which depend on BaseFemininity, ProportionSmaller and ProportionSmallerBO - some are added, some multiplied.
GP itself has a
body_cbs_thigh_z90p_l morph that depends on other morphs. But I couldn't bring it up to the figure itself to be able to export it separately. By default, GP just transforms differently by that morph than the figure, and when legs get spread out, starts sticking out of the body. That looks ugly, unacceptable.
About 1.5 months ago I established that one can't export G9 figures to Unity with any of those morphs (Femininity, Proportions) because they
change the scale of bones. Unity's rigging system doesn't allow runtime bone scaling, this breaks animations (because in Daz animations are based on rotations of joints while in Unity animations are imported as local positions of joints) and blend shapes (because they assume that bones have unchanging size). So, to have feminine and masculine figures, I exported figures without those morphs, but with the morphs applied in Daz. And that worked fine.
But now it seems that JCMs are forcing me to work with those morphs again and handle them in Unity somehow. I'm not sure yet but seems that
G9 just can't be used with Unity if one wants to achieve any good looks with JCMs. Because the G9 JCMs are internally reliant on the body proportions which are represented by morphs and special, proportion-dependent JCMs. This all breaks in Unity because Unity's rigging and animation systems assume that bones are of fixed length. (if I understood all of this correctly anyway)
And just now I was checking G8, thinking of downgrading to G8... and.... it seems, that even the single
pJCMThighSide_85_L still looks different after export to Unity. But at least it doesn't create issues with the GoldenPalace graft (which, in the old G8 2019 version, didn't have to have all those JCMs at all and simply used weight maps that work just fine, both in Daz and Unity).