My Clackers

Issue #2204 resolved
Indulge Me created an issue

I'm going to gripe about Cocky Clackers again, though I feel I should also suggest a solution. As I have the mental horsepower of a baked potato I might not be able to, so apologies in advance.

Anyway the issue with this graft on a graft (Dicktator or Futalicious) is you must merge the rigs without creating duplicate bones. Then Daz Favourites must be applied to both the original graft and clackers independently and manually (Import Custom).

I'm not sure there's a way for the importer to "know" the graft and its child graft rig must be merged without dups. I suspect this must be true of all grafts on grafts though. With respect to Daz Favourites, I'm not sure why they don't get applied when I easy import. As I say, I have to import custom by hand to get them applied correctly.

So for me the issue here is it’s all a bit more painful than I imagine it could be. I mean my other character with a graft (the female variety) is a one-click Easy Import, graft, graft favourites and all.

Thanks for any insight you may have.

Comments (12)

  1. Alessandro Padovani

    Daz morphs are improved in the latest releases with spline morphs which are now the default, but are far to be perfect. Especially daz favorites can not handle complex morphs, that’s why there’s custom morphs as alternative which is more complex to handle but allows to do anything if you know what. So I believe what you are experiencing with morphs is just expected.

    As for duplicate bones I’m not sure what you mean, the merge rigs options allows you to create duplicates or not so this should be handled.

  2. Indulge Me reporter

    Yes, with respect to dups, the easy import “one click” options has merge rigs option and under that a create dups. it’s not clear when you’d want to create duplicates, however. But I do know with clackers and futalicious, you do not want to do that as the morphs won’t work correctly if you do. they need to be treated as part of the same rig of course (because they are). So that’s one of the issues for me. At first I thought why would I want to create duplicate bones. Everything is part of the same rig. Then I read somewhere you always want to do that with clothing, etc. But I’m not so sure.

  3. Alessandro Padovani

    The issue is that daz studio allows different bones to have the same name. So we tell the importer if those bones are to be merged of not, because Thomas didn’t find an automatic way to do that. Probably we could merge if the bones overlap, otherwise don’t, but for now it is a manual choice.

    @Thomas I believe the issue is that the importer merges the figure bones, but not the geograft bones when multiple geografts are merged together. We could check if the bones overlap to decide if merging them or not. Overlapping bones with the same name get merged (as the clackers), non overlapping with the same name get renamed (as headlights). Let us know what you think.

    https://www.renderotica.com/store/sku/66132_Cocky-Clackers-For-G8F-Futalicious

  4. Thomas Larsson repo owner

    I don’t have this asset, but I tried Full Monty BBQ which is a graft for Futalicious. I can confirm that merging gets confused by duplicates. OTOH it is necessary for headlights, because both headlights have a Nipple bone, and without dups the right nipple bone is missing and the left one moves both sides. Looking at the bone location may be a good idea.

  5. Thomas Larsson repo owner

    In the last commit the Duplicates option is replaced by Duplicate Distance, in centimeters. If two bones with the same names are closer than, they are combined into a single bone, otherwise separate bones are created. Tested with G8F with futa, monty and headlights, and set the distance to the default 1 cm. Futa and monty shaft bones are combined, headlight nipples remain separate.

  6. Alessandro Padovani

    Commit 4c1cb43.

    possible bug. zero distance ? I was convinced that overlapping bones would have the same pivot so zero distance. For example in the clackers the bones we have to merge have exactly the same head aka pivot if we look at the transform properties in edit mode. However, having a distance can help to fix PAs errors eventually, so it can be useful. I’d go for zero by default though, meaning only overlapping bones will merge.

    Thing is, if I set zero as distance then nothing will merge, even if the bones have the same pivot. That will force us to set some distance as .001 cm for example, which works fine. I gave a look at the code and it seems there’s nothing preventing zero to work, so I guess there’s some epsilon around.

    Let us know what you think, this is minor we can set .001 when we want zero. If you’re not interested we can close as resolved as it works fine anyway.

    update. I was able to fix the code by introducing a epsilon, this way zero works fine. But I’m sure this is not elegant, nor it explains why doesn’t work without.

  7. Thomas Larsson repo owner

    I don’t think it matters. Most users will merge bones with the default settings (using easy import), and they should work fine in almost all cases. Perhaps the default should be smaller, say 1 mm, to avoid that bones are accidentally merged if they shouldn’t. OTOH, if we have different bones with the same name within 1 cm, we have some very strange asset.

    As for favorites not being loaded, this is unfortunately unavoidable. The only info in the duf file is the favorite names but not the full urls. The plugin tries to guess in which file the favorite is defined by looking at the file names, but this does not always work. DS doesn’t have this problem because it scans the entire database, but doing this from python takes too long time (it takes too long time in DS as well IMO).

  8. Alessandro Padovani

    Ok, thank you for looking at this, if there’s nothing to add we can close as resolved then.

  9. Indulge Me reporter

    Funnily enough this seems to have solved the favourites problem too. I installed the current build to Blender 4.2. Imported a character with futalicious and clackers. I checked Merge Rigs and Daz Favourites, etc. (but not Merge Geografts and no finishing).

    The result was the character imported with two meshes for the gens, futa and clackers. I went to the Daz Runtime tab and could see the morphs in the Favourites section. Manipulating the morphs applied to both meshes correctly. I merged geografts and all was well.

  10. Log in to comment