dForce animation woes

elbigguselbiggus Posts: 23
edited July 2019 in Daz Studio Discussion

For static scenes dForce gives some pleasing results, but I'm having all manner of issues using it in animations and after several days of banging my head against a wall tweaking parameters I'm at a loss; I found a few threads on the topic which sort of helped, but at best all I've really managed to do is slightly delay the failure point.

Problem one: explosions. I've been trying to do two loops of a walk cycle (my plan was to render from half way through the first cycle to half way through the second so that the resulting animation can be looped indefinitely) but without fail every clothing item I've tried explodes sooner or later. The odd thing is that some make it all the way through one cycle and then explode at some point during the second which suggests that rather than it being a problem with the animation itself (intersecting geometry or similar) there's a deeper problem at play -- it's as if each iteration introduces a small error and eventually these small errors cross some sort of threshold and chaos ensues. For those items of clothing that don't even make it through one cycle there seems to be no rhyme or reason as to where or how they explode; sometimes they go from "all looks perfectly fine" in one frame to "massive cloud of random geometry" in the next, and sometimes it's just a small region that gradually starts to boil. Some make it through 30+ frames, some fail before it's hit double digits.

Problem two: sticking. Thumbs seem to be a particular culprit in this. Rather than the cloth bending around or sliding past the pesky digit if it gets too close, it seems determined to stick to it. That's enough of a problem in itself, but the way it sticks to it is bizarre -- it doesnt drag the cloth with it as it would do in "real life" if you glued your thumb to a piece of material, it just grabs a single vertex whilst leaving the rest of the material unaffected which results in an odd protrusion. Yes, I can tweak the animation to stop the bad touching, but that's a long and tedious process as it's not easy to tell whether it's going to happen or not without running the simulation, and having to wait 10-15 minutes, tweak a couple of frames, wait another 10-15 minutes, tweak a couple more, etc., is just not a practical solution. (I wish there was some sort of "restart simulation from frame X feature"!)

So, long story short, is there anything I can do beyond endlessly twiddling with friction, stiffness, etc., and running the simulation a gazillion times (by which point I may as well have animated the whole thing manually)? I did experiment with things like number of iterations between frames, etc.; it seemed to invariably make things worse, but perhaps there's an art to it?

Post edited by elbiggus on

Comments

  • pdr0pdr0 Posts: 204
    elbiggus said:

    For static scenes dForce gives some pleasing results, but I'm having all manner of issues using it in animations and after several days of banging my head against a wall tweaking parameters I'm at a loss; I found a few threads on the topic which sort of helped, but at best all I've really managed to do is slightly delay the failure point.

    Problem one: explosions. I've been trying to do two loops of a walk cycle (my plan was to render from half way through the first cycle to half way through the second so that the resulting animation can be looped indefinitely) but without fail every clothing item I've tried explodes sooner or later. The odd thing is that some make it all the way through one cycle and then explode at some point during the second which suggests that rather than it being a problem with the animation itself (intersecting geometry or similar) there's a deeper problem at play -- it's as if each iteration introduces a small error and eventually these small errors cross some sort of threshold and chaos ensues. For those items of clothing that don't even make it through one cycle there seems to be no rhyme or reason as to where or how they explode; sometimes they go from "all looks perfectly fine" in one frame to "massive cloud of random geometry" in the next, and sometimes it's just a small region that gradually starts to boil. Some make it through 30+ frames, some fail before it's hit double digits.

    Problem two: sticking. Thumbs seem to be a particular culprit in this. Rather than the cloth bending around or sliding past the pesky digit if it gets too close, it seems determined to stick to it. That's enough of a problem in itself, but the way it sticks to it is bizarre -- it doesnt drag the cloth with it as it would do in "real life" if you glued your thumb to a piece of material, it just grabs a single vertex whilst leaving the rest of the material unaffected which results in an odd protrusion. Yes, I can tweak the animation to stop the bad touching, but that's a long and tedious process as it's not easy to tell whether it's going to happen or not without running the simulation, and having to wait 10-15 minutes, tweak a couple of frames, wait another 10-15 minutes, tweak a couple more, etc., is just not a practical solution. (I wish there was some sort of "restart simulation from frame X feature"!)

    So, long story short, is there anything I can do beyond endlessly twiddling with friction, stiffness, etc., and running the simulation a gazillion times (by which point I may as well have animated the whole thing manually)? I did experiment with things like number of iterations between frames, etc.; it seemed to invariably make things worse, but perhaps there's an art to it?

     

    Difficult to say without seeing the animation. Maybe 2 is contributing  to 1 ? Maybe the thumb sticking is contributing to the explosions in the 2nd cycle?

     

    2)  If the thumb is always a known issue, then one way would be to use a collision proxy  - ie. invisible collider geometry such as a sphere or cylinder parented to the hand or thumb . The shape is smoother , but also different settings like friction can be used so cloth will slide off more easily instead of catching . But if the problem is the thumb passes too close to the body, that will cause impingement and explosion regardless

     

    1)  What is "every clothing" ? Were they d-force compatible ? Or simple, welded pieces , or derived from dynamic cloth from other programs ?

    The observation that some make it though the 1st cycle intact does not clear you of a possible animation problem. eg. If the animation is buggy or it might predispose or position it for explosion during the 2nd. A seamless looping cycle for the figure doesn't mean the cloth will loop along seamlessly

    Is the thumb too close ? If there is no physical path for a thin cloth to pass  freely, it won't work. You have to fix the animation

     

     

  • PadonePadone Posts: 3,778
    edited July 2019
    elbiggus said:

    Problem one: explosions

    Problem two: sticking

    To avoid both the issues you may need more precision in the dforce simulation. That can be achieved by increasing the subframes and iterations per subframes. Also set the collision mode to best and increase the collision iterations. This will make the simulation slower though.

    https://www.daz3d.com/forums/discussion/203081/dforce-start-here

    Post edited by Padone on
  • elbigguselbiggus Posts: 23

    Thanks for the input.

    pdr0 said:

    Difficult to say without seeing the animation. Maybe 2 is contributing  to 1 ? Maybe the thumb sticking is contributing to the explosions in the 2nd cycle?

    With some items of clothing the explosion happens long before the thumb has got anywhere near anything -- they get through the "simulating from memorised pose" stage fine, and fail 10-15 frames in to the animation. (I tried a few passes without the memorised pose, but it results in the cloth starting from a weird position.)

    pdr0 said:

    2)  If the thumb is always a known issue, then one way would be to use a collision proxy  - ie. invisible collider geometry such as a sphere or cylinder parented to the hand or thumb . The shape is smoother , but also different settings like friction can be used so cloth will slide off more easily instead of catching . But if the problem is the thumb passes too close to the body, that will cause impingement and explosion regardless

    Might give that a whirl. The thumb is a fair distance from the body, but because the clothing moves during the simulation it's impossible to tell how much clearance is needed at any given moment without running it until it catches, tweaking, and running it again, which takes a looooong time.

    pdr0 said:

    1)  What is "every clothing" ? Were they d-force compatible ? Or simple, welded pieces , or derived from dynamic cloth from other programs ?

    I've tried over a dozen now that all claim to be dForce compatible, come with simulation presets, etc., but I suspect some of them were only tested on a still pose or very simple animations as they're so unstable.

    pdr0 said:

    The observation that some make it though the 1st cycle intact does not clear you of a possible animation problem. eg. If the animation is buggy or it might predispose or position it for explosion during the 2nd. A seamless looping cycle for the figure doesn't mean the cloth will loop along seamlessly

    It seems to work in principle; this test render uses one of the "completes one cycle OK, suddenly goes crazy during the second cycle" clothing items, but luckily it exploded late enough in cycle 2 that the results were salvageable, and is the closest I've come to any sort of success so far. Sadly it doesn't work on the walk cycle, though -- that's got another 25ish frames per cycle and it doesn't "live" long enough to get a working loop.  (It's this dress, but I had to remove the buttons as they really didn't behave well! Possibly could have fiddled with their properties a bit, but it was easier just to get rid of them.)

    pdr0 said:

    Is the thumb too close ? If there is no physical path for a thin cloth to pass  freely, it won't work. You have to fix the animation

    There is space for it to pass the body, but as noted above because the cloth moves it's hard to predict exactly when and where it will catch -- I kind of wanted something "swishy" as a visual effect, but the hand movements required to keep it safe were getting a bit, er, eccentric. I'll try gluing a sphere to the thumbs and cranking up the iterations, but given the amount of time I've spent on it so far I'm wondering if I'm better off rethinking my plan entirely...

Sign In or Register to comment.