how to stop belts, buckles, buttons etc from distorting?

gabugabu Posts: 303
edited December 1969 in The Commons

Is there any way of preventing , or at least lessening, the distortion of what should be rigid objects when they are conformed to eg a Genesis figure as is obvious (at least to me) in the attached image?

dwarfpromo02.jpg
1000 x 1300 - 99K

Comments

  • CypherFOXCypherFOX Posts: 3,401
    edited December 1969

    Greetings,
    There's something called 'Rigidity Groups' which intuitively seems like it would help. (Also used for pauldrons, for example.)

    Unfortunately it's only going to help if the object is actually modeled in; glancing at that image it seems as if the buckles are added via texture map. I don't think there's much you can do for that.

    In any case, for that image I had to look pretty closely to see it; I believe you mean the lower buckle on the dwarf that's right by his leg. It looks like it auto-followed his leg lift, and so the texture got stretched. I don't think anything's going to help with that, but I'd love to be proven wrong.

    -- Morgan

  • gabugabu Posts: 303
    edited December 1969

    Yes, those buckles are supplied by the texture.

  • SickleYieldSickleYield Posts: 7,639
    edited April 2013

    Cypherfox said:
    Greetings,
    There's something called 'Rigidity Groups' which intuitively seems like it would help. (Also used for pauldrons, for example.)

    It won't. Rigidity groups work in the following situations:


    -No custom FBM morphs (custom morphs inactivate rigidity).
    -Item is sufficiently peripheral to geometry that it doesn't matter when it's totally unaffected by FBMs. (Example: pauldron, helmet details, other items on the head that really only need to be scaled)


    And even then, rigidity only affects behavior vs. generated FBMs. It won't do a thing for the bend distortion in the pic caused by the leg bending. That is fixed solely and specifically by corrective morphing.


    I've never found rigidity remotely useful partly because of my morphing preferences, but also because in most circumstances where it's actually useful, it's just as useful to do a smartprop instead of a rigidity map.

    Post edited by SickleYield on
  • Norse GraphicsNorse Graphics Posts: 0
    edited June 2013

    ...

    Post edited by Norse Graphics on
  • JaderailJaderail Posts: 0
    edited December 1969

    I've never found rigidity remotely useful partly because of my morphing preferences, but also because in most circumstances where it's actually useful, it's just as useful to do a smartprop instead of a rigidity map.
    Best Tip of the Day Here Folks. Listen and learn.
  • 3WC3WC Posts: 1,108
    edited December 1969

    Jaderail said:
    I've never found rigidity remotely useful partly because of my morphing preferences, but also because in most circumstances where it's actually useful, it's just as useful to do a smartprop instead of a rigidity map.
    Best Tip of the Day Here Folks. Listen and learn.

    Not to hijack the thread, but could you post a simple step-by-step on how to do this? I've been dealing with the problem of how to preserve buckles' shapes while creating morphs, and this briefly crossed my mind, but I don't even know if I really understand what a "smart prop" is. Thanks.

  • JaderailJaderail Posts: 0
    edited April 2013

    A smart prop is any Prop Asset that was Parented (in the proper position) to another mesh at the time the Asset was saved as a Single item. Things to keep in mind when using Smart props. Only one (1) item can be parented to any mesh at any time. A set of Shoulder guards would need to be 1 item not two for example. Also the Props can have built in morphs to help Conform (by hand) to different poses as the figure is posed. You see this in many long dresses.
    The advantages of them are they keep the proper form on load. Always load into the proper place (in default position and shape). And only built in Morphs will affect them.

    EDIT: To add, the Smart prop will be a Full item on its own and saved as a separate prop. It will follow the Parent mesh in all translations and poses.

    Post edited by Jaderail on
  • SickleYieldSickleYield Posts: 7,639
    edited December 1969

    wwes said:
    Jaderail said:
    I've never found rigidity remotely useful partly because of my morphing preferences, but also because in most circumstances where it's actually useful, it's just as useful to do a smartprop instead of a rigidity map.
    Best Tip of the Day Here Folks. Listen and learn.

    Not to hijack the thread, but could you post a simple step-by-step on how to do this? I've been dealing with the problem of how to preserve buckles' shapes while creating morphs, and this briefly crossed my mind, but I don't even know if I really understand what a "smart prop" is. Thanks.

    A smartprop is just a prop that's parented to another item so that it loads parented. It's not a good solution to buckles. Pretty much the only way to decrease distortion of details on movement is with morphs. I say that a lot, and no one ever wants to hear it. I can't figure out if Hex is really that bad at deforming without affecting vert order, or people just don't want to put in another couple of hours work to make something work properly with movement.


    Anyway, though,you create a smartprop thus:


    -Import the obj.
    -Texture it. Save a texture preset if desired.
    -Right-click and change parent. Choose the item to which you want it to load parented (usually a hand or the head).
    -Select the item. File--save as--Figure Or Prop Asset.
    -Choose a place to save it, usually YourName and Your Item. Make sure the "smartparent" option is checked.
    -When you reload from library, you must have the item to which it is parented selected in order for it to load parented.


    Et voila.


    If you want to load smartprops as part of an entire outfit you can use a Wearables preset (also accessible from file--save as), which requires you to load everything onto Genesis and select Genesis before generating it.

  • SickleYieldSickleYield Posts: 7,639
    edited April 2013

    Jaderail said:
    Only one (1) item can be parented to any mesh at any time. A set of Shoulder guards would need to be 1 item not two for example. Also the Props can have built in morphs to help Conform (by hand) to different poses as the figure is posed. You see this in many long dresses.
    The advantages of them are they keep the proper form on load. Always load into the proper place (in default position and shape). And only built in Morphs will affect them.

    Whaaa? That's not correct. I've loaded a Wearables preset with four or five smartprops in it at a time. Further, if you buy an architectural preset like A Bright Loft, one item will load with DOZENS of props parented to it.

    Post edited by SickleYield on
  • wancowwancow Posts: 2,708
    edited December 1969

    Why don't you just take the OBJ into Blender/Hexaton/Wings3D or whatever, copy out the Buckle (or whatever) geometries, and apply that as a spart prop instead of going through all that.... craaap.... :)

    Smart Props are underrated...

  • JaderailJaderail Posts: 0
    edited December 1969

    Jaderail said:
    Only one (1) item can be parented to any mesh at any time. A set of Shoulder guards would need to be 1 item not two for example. Also the Props can have built in morphs to help Conform (by hand) to different poses as the figure is posed. You see this in many long dresses.
    The advantages of them are they keep the proper form on load. Always load into the proper place (in default position and shape). And only built in Morphs will affect them.

    Whaaa? That's not correct. I've loaded a Wearables preset with four or five smartprops in it at a time. Further, if you buy an architectural preset like A Bright Loft, one item will load with DOZENS of props parented to it.Hmm... I was going by the example of Genesis and the hands with a Single Prop like the Horse reins. You can only parent one hand to the Reins (Genesis) and not both. I must admit I have never built any items that parented to more than one item as most of what I do are small single use props. I use grouping for multiple items.
    I am happy to learn I am wrong. This will open many doors for me.

  • SickleYieldSickleYield Posts: 7,639
    edited December 1969

    Jaderail said:
    Jaderail said:
    Only one (1) item can be parented to any mesh at any time. A set of Shoulder guards would need to be 1 item not two for example. Also the Props can have built in morphs to help Conform (by hand) to different poses as the figure is posed. You see this in many long dresses.
    The advantages of them are they keep the proper form on load. Always load into the proper place (in default position and shape). And only built in Morphs will affect them.

    Whaaa? That's not correct. I've loaded a Wearables preset with four or five smartprops in it at a time. Further, if you buy an architectural preset like A Bright Loft, one item will load with DOZENS of props parented to it.

    Hmm... I was going by the example of Genesis and the hands with a Single Prop like the Horse reins. You can only parent one hand to the Reins (Genesis) and not both. I must admit I have never built any items that parented to more than one item as most of what I do are small single use props. I use grouping for multiple items.
    I am happy to learn I am wrong. This will open many doors for me.

    When you're parenting parts of Genesis TO other things (instead of parenting those things to Genesis) you're in another area that I haven't really worked with. But if you want Genesis to hold two swords and a cigar while wearing a hat, that's completely possible.

  • JaderailJaderail Posts: 0
    edited December 1969

    When you're parenting parts of Genesis TO other things (instead of parenting those things to Genesis) you're in another area that I haven't really worked with. But if you want Genesis to hold two swords and a cigar while wearing a hat, that's completely possible.
    LOL! I knew that. I've just never multi parented to another prop before. I'll give that a try next time.
  • DaremoK3DaremoK3 Posts: 798
    edited April 2013

    In my experience, I find that the use of smart props is a double edged sword...

    On one hand, you don't suffer from conforming distortions, but on the other hand they are limited and sometimes require manual adjustments when posing.

    Sure, they will attach to the body, or even body parts, and transform with default dials. But, what if your pose employs a chain of body parts? You will find your parented prop not exactly staying where you wanted it to stay.

    This is not always the case, of course, but, it is for certain cases. Especially when it comes to the opening topic of this thread regarding distorting buckles.

    I have been working on this issue, and have come very close to solving how to "link" smart parented props to move with the body the same way correction morphs can be made with Tri-Ax conforming meshes. I have a working version saved as a DUF scene with all coding remaining intact.

    I just can't replicate the work with fresh loads of all meshes. The linking gets broken somewhere, and no matter how much I manipulate the code I can not seem to find the correct solution (yet). Hell, I'm not sure if it is even a viable solution. Perhaps, RbtWhz will stumble upon this, and shed some light if my work might yield something usable.

    And, I agree with you, SickleYield, It is a little extra work, but all the vendors should be addressing the distortion issues, and creating the correction MT's.

    Side Note: You can custom lock your smart parented prop to auto-load to an exact (body) part, and while having absolutely nothing selected if you wish to. It does require a quick code hack in your saved smart prop DUF file.

    1. Open your smart prop DUF file in a text editor, and find the "parent" line under "scene" / "nodes" section.
    2. Change attribute "@selection" (which defines selection node for parenting) to the actual mesh name (id), and not the name that might appear for the selection node in the scene tab.
    3. Save your work.

    This will bind your smart prop to that specific mesh / node. If you require your prop to parent to different meshes, then don't perform this hack...

    Example:

    CodeHack03.jpg
    903 x 445 - 69K
    CodeHack02.jpg
    938 x 444 - 64K
    CodeHack01.jpg
    906 x 442 - 70K
    Post edited by DaremoK3 on
  • DaremoK3DaremoK3 Posts: 798
    edited April 2013

    *Conforming-like Smart Parented Props; Proof Of Concept:


    Corresponding images below:

    1. Here we have the typical Genesis conforming fit-to mesh. In this case, a belt with a buckle (that should not deform when posing). We are going to perform a simple transform with Genesis' Pelvis (Twist Left/Positive).

    2. You can see the mesh deforms. It skews with the belt. Now, it isn't all that bad, but "metal" buckles shouldn't deform at all.

    3. Now, let's see what happens when you employ more transforms (which would be typical with posing). Well, don't know what you might think, but I find this mesh very unsatisfactory. Not only should the buckle not severely deform like that, but the belt should hold it's shape as well.

    Correction morphs will fix the issues, but that's beside the point. What if you wanted to use a smart parented buckle prop instead of the deforming (attached) mesh buckle, and you wanted it to automagically follow as a morph corrected mesh buckle could?

    It might be possible (if someone can discover the correct formula to solidify it).

    *More to come - continued in next post...

    PelvisTwistDeform01.jpg
    1280 x 764 - 140K
    PelvisTwistDeform.jpg
    1280 x 762 - 137K
    Default.jpg
    1280 x 764 - 134K
    Post edited by DaremoK3 on
  • DaremoK3DaremoK3 Posts: 798
    edited April 2013

    *Conforming-like Smart Parented Props; Proof Of Concept: Part II

    1. Here we apply the same Genesis Pelvis Twist as we did in the previous post. But, this time I have hidden the mesh buckle via the opacity parameter in the surfaces tab. Then I loaded a smart parented prop version of the buckle (with the no selection hack) that I had prepared earlier with MT's, and linking. The buckle prop correctly moves with the belt transform, and there is absolutely no distortion.

    *I forgot to screenshot a base image to show at default pose the prop sits in exact location as mesh buckle, but you can see the marking polygons on each side of prop. If it didn't "follow" with the transform you would see the marking polys obscured.

    2. This is the master control morph created for the belt to engage both the left, and the right buckle morphs (I un-hid it for visibility, but otherwise I would keep it hidden). It is linked via Genesis' transform.

    3. And, here is the buckle transform morph that the belt is controlling (technically, Genesis is controlling). This would be a hidden MT as well. Even though it is a basis of 0.00 to 1.00, the belt linking mirrors Genesis' twist transform (-15.00 to 15.00) with the proper scalar applied for smooth transitions worthy of animation work (it was the most time-consuming endeavor of the work).

    Images below:
    ,*continued in next post...

    SmartParentedPropFollow.jpg
    1280 x 764 - 136K
    ConformedBeltControl.jpg
    1280 x 764 - 143K
    GenesisPelvisTwist.jpg
    1280 x 764 - 139K
    Post edited by DaremoK3 on
  • DaremoK3DaremoK3 Posts: 798
    edited April 2013

    *Conforming-like Smart Parented Props; Proof Of Concept: Part III


    1 & 2. In the Property Editor; example of how it is all linked together. The belt is my base conformer (linked with Genesis) which controls the correction morphs in the buckle. One drawback of props are that they are not seen by the Property Editor, so you have to jump through a few hoops to get everything working properly.

    Once you create your master control for the belt, and have linked the buckle, you need to link it directly to Genesis' transform. This was the tricky thing to discover (if anyone knows of a better way, please speak up).

    3. (NO IMAGE) In order to perform the Genesis link you need to "parent" Genesis to your belt (or whatever conforming mesh you wish to link). First, get out of the Property Editor before you do so, and then once parented, select your main "Belt" node (or whatever your mesh is named), and go back into the editor. This is important because, it will now propagate with both Genesis and the belt, but reversed with Belt the defining mesh to work with (on the left). The right pane will contain all attributes of both meshes, but only contain the belt modifiers.

    Now, here is where the magic comes in. In the right pane find Genesis' Pelvis node, and expand Y Rotate (Twist). Then, in the left pane, select your master control morph, and drag it onto the "link" node. That's it, all done... If you set up your correction MT's correctly (with correct scalar) you should be good to go.

    Get out of the Property Editor, and un-parent Genesis. Save a "Scene" file, but I would suggest you save your individual meshes first, or update the assets at least. If all was done and saved correctly your buckle prop morphs should have acquired an "alias" file, and your DUF file will contain new channels with "legacy_link" (linked with alias file). I believe these are the ones that are going to lead to a viable solution, but as I said previously, I have yet to manipulate any of the code to get it to work without a "Scene" file.

    One other caveat is that the code somehow manipulates Genesis' default transform parameter. In this case, Pelvis/Twist; Changes twist right -15.00 to -1.00. Easy fix after load is just change it back via parameter settings, and everything works as expected. I couldn't find where in the code the change is taking place, but then again, it could be that my discovery is way off base and shouldn't be used.

    4. Example of linking Alias morph file created in the buckle morphs folder.

    5. Example of the DUF scene file code that shows the channels with the legacy linking.

    Images below:

    WorkingSceneCode.jpg
    1114 x 631 - 108K
    LinkingAliasFile.jpg
    603 x 123 - 26K
    PropertyEditorLinking02.jpg
    1280 x 764 - 195K
    PropertyEditorLinking01.jpg
    1280 x 764 - 190K
    Post edited by DaremoK3 on
  • DaremoK3DaremoK3 Posts: 798
    edited December 1969

    To illustrate what I mean by smart parented props not behaving as expected, and staying put where you want them while posing Genesis.

    The following image contains a conformed (fit-to) belt mesh with attached buckle, and a fit-to strap mesh in blue which follow the transforms of Genesis. They are in the correct respective placements as result of Genesis pelvis twist left.

    The yellow buckle, and strap are smart parented to the belt's Pelvis node.

    The pink buckle, and strap are smart parented to the belt's Hip node.

    Each parenting has it's strength and weaknesses, but you can clearly see they fall short of where they should actually settle. Manual manipulation is necessary for corrections.

    ConformVsParented.jpg
    1200 x 638 - 127K
  • JaderailJaderail Posts: 0
    edited December 1969

    Wonderful info. Thank You for this.

  • DaremoK3DaremoK3 Posts: 798
    edited December 1969

    You're welcome, Jaderail.

  • DodgerDodger Posts: 304

    In 1967, Star Trek was in its second season, go-go boots and tribbles and bright colours and battling vague blurs on screen and all.
    Ten years later, Star Wars came out and looked good enough that it holds up now, nearly half a century later.


    Ten years later. This is still a problem and seems barely adressed.

    Do better, DAZ.

  • MadaMada Posts: 1,991
    edited July 2023

    It has been. Use rigid follow nodes for buttons and belt buckles. If you can't use rigid follow nodes then select the whole buckle and fill it all with the same percentage weight, that will stop most distortions. The rest can be done with JCMs.

    This is with spine and pelvis twisted to max, bend forward, to the side and thigh bend forward :) The buckle is kept rigid by having the same weight. The decorative piece is a prop attached to a rigid follow node. Buttons work best as rigid follow nodes.

     

    Screenshot 2023-07-28 153645.png
    905 x 839 - 662K
    Post edited by Mada on
Sign In or Register to comment.