dForce - how to bypass crashes

What is conditions of trobleless simulation? What i need to check before press "simulate" button? What i can do if in default T-pose (!!!) with some clothes items i get dazstudio crash?

Comments

  • algovincianalgovincian Posts: 2,576

    Some observations from another thread: https://www.daz3d.com/forums/discussion/comment/3115406/#Comment_3115406

    I might suggest a couple things to try to avoid explosions:

    1. Avoid intersecting (not physically possible) geometry from the start. Even better yet, avoid geometry that starts within the collision offset, if you get my drift. If this can't be avoided for some reason, you might try creating an Influence Weights map such that the intersecting areas have zero influence in the simulation. This isn't ideal, but may be the only way to get the sim to work for the geo.

    2. There is a complex relationship between the collision offset, the scale of the geometry (size of the quads/faces), and the distance the verts move from iteration to iteration. You might also try reducing the collision offset, reducing the scale of the geometry by subdividing, etc., or reducing the distance verts move in between iterations by adjusting the simulation parameters. It should be noted that these changes will definitely effect the simulation run time and the look of the drape as well (you'll most likely want to compensate by adjusting other physical properties in the surfaces tab).

    As always, this post by Rob is critical. I strongly suggest reading it all:

    https://www.daz3d.com/forums/discussion/203081

    These are just my observations, so take from them what you may . . . hope this helps!

    - Greg

  • algovincian thanks for your answer. Its seems difficult way to re-launch daz every time and play with parameters... Can I start simulation from curent pose (when only clothes moves and figure stay in same position)? May be it is more safe mode? What is the static simulation in menu and how it works?

    P.S. Is any hope developers fix all erros in next builds? dForce thread is closed. why? bugs still here...

  • algovincianalgovincian Posts: 2,576
    sniperx said:

    algovincian thanks for your answer. Its seems difficult way to re-launch daz every time and play with parameters... Can I start simulation from curent pose (when only clothes moves and figure stay in same position)? May be it is more safe mode? What is the static simulation in menu and how it works?

    P.S. Is any hope developers fix all erros in next builds? dForce thread is closed. why? bugs still here...

    I've noticed that if the simulation slows way down on a frame (ie: start of the explosion), you can mash escape and get it to stop without the crash. I agree, it is annoying to have to save often, monitor the sim, and restart DS sometimes (or worse yet, re-boot because your card won't initialize).

    I've been thinking about a script that monitors the simulation time per frame, and if the current frame is taking an extra long time, abort (essentially monitoring/mashing escape so you don't have to). This would be much better if formally integrated, though.

    That being said, dForce is still in its infancy, and I'm sure it will get more stable. In the mean time, not asking it to simulate the impossible is the best solution. Unfortunately, this means not trying to simulate many of the clothes in the store as they are most definitely not designed for cloth simulation.

    And I think that thread is closed just to keep it clean, which is a good idea - there are plenty of other threads.

    - Greg

  • PadonePadone Posts: 3,481

    I used many phisics engines from many different programs in my journey into 3D. From Truespace to Lightwave to Blender. I never had those tools "exploding" the geometry. This seems to be a unique "feature" in dForce. My advise at the time being is to simply use another tool for simulations and leave dForce its time to grow up.

  • Well, up to now I've had success with dForce, but I've kept it simple really. Mostly just a simple dress.

    Today though, I tried to add hair to the mix after purchasing "dForce Master - Hair Simulation Presets for dForce Cloth Engine". I kept the dress in the scene, but it's pretty simple: G8F, with dress and with hair. Everyone was applied according to the notes for dForce Master's recommendations. It starts just fine and gets through the first cycle, which takes about 1.6 hours, then gets to the 50% cycle and gets to 3 hours 48 minutes, then it crashes.

    This is all on a MacBook Pro (2012) with a 650M nVidia card, but I'm having the CPU do all the rendering for both the viewport and actual renderings, but we never get to the option to render. The simulation crashes it, but upon reading the log, it's a graphics crash, not a CPU crash. This is odd because the graphics really aren't in use.

    Anyone have any suggestions?

  • Well, it appears that the dForce was set to use my built-in video. I tried changing it to the nVidia 650M, but it crashed within 3 minutes. Not surprising. Daz Studio has been crazy unstable on that graphics chip even though it has CUDA cores.

    So, I changed it to the CPU and it made a difference... to start. It finished the initial process in about 40 minutes, about 3 times faster than the built-in video, but once it got to the second process at the 50% mark on the top progress bar, it started just fine but then it began to go very sluggishly. At around 20% on the lower progress bar, it was taking around 5-12 minutes before the time elasped would change. Last night, at around 28%, I decided to leave it be. This morning it was still stuck and after a full day waiting, it won't refresh at all. The app seems unresponsive, but the CPU shows to still be working with Daz Studio usually taking up around 92-98% of the processes, so it clearly is working.

    So, is dForce not ready for primetime for hair? Did I just take on too much? I realize the computer isn't the fastest, but it's never done this and I've done some pretty wild stuff on it.

  • Set your Collision Layers properly.1 is closest to the skin, 2 sits on top of that. This is especially true and important for hair, which I've had great success with for almost over a month now.

    There is no one-click solution for hair yet, so if you want it now, you have to work for it. That doesn't mean dForce can't handle it, it means the hair is the problem.

    You need to separate the hair strips with the Geometry Editor tool, and further break the entire hair down into separate levels. The roots act as anchors, so their dynamics get set to 0. Everything below that should be separated into sub sections - crown, ears, cheeks, neck, chest, and so on. This gives you better dynamics control.

    It takes time and with the overlapping strips it can be frustrating if you're trying to make each individual strip a totally separate entity. Work in groups. The top ends are always the anchors.

    Once in the Geometry Editor Tool (Tool Options pane, select via drop-down at the top), expand the Surfaces subsection. Most hairs have a Skullcap, and then layers on top of that. These layers will be the basis of how we set our Collision Layers up later.

    Hide the Skullcap. This never gets dynamics.

    Decide which layer you want to start with, and hide the others. It's best if you set the display to Hidden Line because the mesh will be your guide.

    Using the Lasso tool, select the roots of the section of hair you're working with. Right-click on the mesh, and find the Geometry Selection>Invert Selection function. Right-click and find the Geometry Assignment>Create Surface from Selection function, and name this Dyn+whatever section of hair it is (DynBase, DynBangs, DynTop, etc). Or you can name it section+Dyn so that Base and BaseDynamics are together. Your choice. I prefer to keep the Dynamic portions together for Shift+Click selecting later.

    You will build your other subsections off this main Dynamics surface, or you can leave it like it is and just apply the dForce modifier to it and go. I don't reccommend that, because it's just so sloppy.

    While you are not required to break down each individual strip into separate entities, at least break them up into Front, Back, and Lefts and Rights. The more you do, the more natural and realistic it will end up.

    So now that you have your core Dynamic section of the one layer of hair, you can select an entire section for the Crown (below the roots and above the ears). Use the Marquee tool then clean things up with the Point tool. Create Surface from Selection again, and name it Crown (with Dyn at the front or back, or not at all if there's no crown surface already).

    Next, select the ear section all the way around, and name it.

    THen the neck, then whatever else below that. I only work with the long hairs like Persephone and Lustrous, so there's Chest and Breasts and further down.

    Remember to also split the back, which is usually one big piece, into Left and Right as well. Depending on how wide it is, I prefer at least Left, Right, and Middle.

    You will go through this for each layer of the hair (Base, Top, Top 2, Middle, etc).

    As you make these new Surfaces, they don't retain their original texturing, but you can copy/paste from the material list easily enough.

     

    WHen you're ready, apply the dForce Dynamic Surface (not Surface AddOn).

    Go down the Material list to the Dynamics section and set to 0 those items which will not get Dynamics - Skullcap, the Roots for each layer, etc.

    Now, here's where things go South. If you've read the STart Here thread, you know that Density works on the theory of higher numbers mean thicker material. Something about hair inverts this theory. Lower numbers mean thicker hair. I usually set mine to 20. Anything below that explodes. The default 180 is like water.

    This is also where you set your Collision Layers. Skullcap is 1, whatever's on top of that is 2, then 3, etc etc, however many layers there are.

    Self-Collision can be hit or miss, depends on the hair. Experiment.

    Save first.

    As for the other options like Damping and Expansion Coefficient and whatnot - I don't have any use for them with hair. You might, but frankly I get results with just the ones mentioned here. You can turn the Dynamics down to a certain extent, so the hair holds its base shape somewhat, but you will lose that to some degree.

    Once you hit Simulate, things may look like they stopped, but don't panic. If afer 10 seconds you don't see anything happen, cancel, because it's about to explode. If it explodes, double check your collision layer settings and self-collision. You may also need to adjust the collision depth of each layer. When I do mess with this, I double it for each layer.

    Short, simple, and direct. If that doesn't get you up and running, play with it.

  • algovincianalgovincian Posts: 2,576

    Set your Collision Layers properly.1 is closest to the skin, 2 sits on top of that. This is especially true and important for hair, which I've had great success with for almost over a month now.

    There is no one-click solution for hair yet, so if you want it now, you have to work for it. That doesn't mean dForce can't handle it, it means the hair is the problem.

    You need to separate the hair strips with the Geometry Editor tool, and further break the entire hair down into separate levels. The roots act as anchors, so their dynamics get set to 0. Everything below that should be separated into sub sections - crown, ears, cheeks, neck, chest, and so on. This gives you better dynamics control.

    It takes time and with the overlapping strips it can be frustrating if you're trying to make each individual strip a totally separate entity. Work in groups. The top ends are always the anchors.

    Once in the Geometry Editor Tool (Tool Options pane, select via drop-down at the top), expand the Surfaces subsection. Most hairs have a Skullcap, and then layers on top of that. These layers will be the basis of how we set our Collision Layers up later.

    Hide the Skullcap. This never gets dynamics.

    Decide which layer you want to start with, and hide the others. It's best if you set the display to Hidden Line because the mesh will be your guide.

    Using the Lasso tool, select the roots of the section of hair you're working with. Right-click on the mesh, and find the Geometry Selection>Invert Selection function. Right-click and find the Geometry Assignment>Create Surface from Selection function, and name this Dyn+whatever section of hair it is (DynBase, DynBangs, DynTop, etc). Or you can name it section+Dyn so that Base and BaseDynamics are together. Your choice. I prefer to keep the Dynamic portions together for Shift+Click selecting later.

    You will build your other subsections off this main Dynamics surface, or you can leave it like it is and just apply the dForce modifier to it and go. I don't reccommend that, because it's just so sloppy.

    While you are not required to break down each individual strip into separate entities, at least break them up into Front, Back, and Lefts and Rights. The more you do, the more natural and realistic it will end up.

    So now that you have your core Dynamic section of the one layer of hair, you can select an entire section for the Crown (below the roots and above the ears). Use the Marquee tool then clean things up with the Point tool. Create Surface from Selection again, and name it Crown (with Dyn at the front or back, or not at all if there's no crown surface already).

    Next, select the ear section all the way around, and name it.

    THen the neck, then whatever else below that. I only work with the long hairs like Persephone and Lustrous, so there's Chest and Breasts and further down.

    Remember to also split the back, which is usually one big piece, into Left and Right as well. Depending on how wide it is, I prefer at least Left, Right, and Middle.

    You will go through this for each layer of the hair (Base, Top, Top 2, Middle, etc).

    As you make these new Surfaces, they don't retain their original texturing, but you can copy/paste from the material list easily enough.

     

    WHen you're ready, apply the dForce Dynamic Surface (not Surface AddOn).

    Go down the Material list to the Dynamics section and set to 0 those items which will not get Dynamics - Skullcap, the Roots for each layer, etc.

    Now, here's where things go South. If you've read the STart Here thread, you know that Density works on the theory of higher numbers mean thicker material. Something about hair inverts this theory. Lower numbers mean thicker hair. I usually set mine to 20. Anything below that explodes. The default 180 is like water.

    This is also where you set your Collision Layers. Skullcap is 1, whatever's on top of that is 2, then 3, etc etc, however many layers there are.

    Self-Collision can be hit or miss, depends on the hair. Experiment.

    Save first.

    As for the other options like Damping and Expansion Coefficient and whatnot - I don't have any use for them with hair. You might, but frankly I get results with just the ones mentioned here. You can turn the Dynamics down to a certain extent, so the hair holds its base shape somewhat, but you will lose that to some degree.

    Once you hit Simulate, things may look like they stopped, but don't panic. If afer 10 seconds you don't see anything happen, cancel, because it's about to explode. If it explodes, double check your collision layer settings and self-collision. You may also need to adjust the collision depth of each layer. When I do mess with this, I double it for each layer.

    Short, simple, and direct. If that doesn't get you up and running, play with it.

    Very detailed info, @DrNewcenstein - thanks for posting! Do you have any animation examples using these techniques? If so, please post them here, or in this thread (I've started some preliminary work myself, and a thread for dForce Hair Simulation Tools in general):

    https://www.daz3d.com/forums/discussion/218431/dforce-hair-simulation-tools

    It includes links to a dForce hair product in the store from @EcVh0.

    - Greg

  • I'll have to set a scene up for a tutorial, but I should be able to get something on YouTube in the next couple of days. Have to get my mic set up, and all that.

  • I used the dForce Master for Hair Simulation Tools by EcVhO. It has presets for much of that, so that's what I used to simplify it. It has a separate scalp setting, which I made sure to use. I then used the first soft setting for the rest of the hair. It seems to be working, but it's taking forever. Not sure if I should force quit Daz Studio or not. There's been no refresh on the screen but the CPU still shows Daz Studio as working, so something is going on. If it's close to finishing, I'd hate to stop it prematurely, but I have no way of knowing.

  • It shouldn't be all that slow, but then I don't know how much actual influence the GPU has on that. I'm using a GTZ 1080TI as my dForce unit, and I can run a 90 frame simulation on Lustrous Hair for G2F with 33 Dynamic Surfaces and 3 different collision layers in a laying down pose in under 3 minutes.

     

    I've almost got my YT tutorial done. Should be up sometime Friday the 22nd.

Sign In or Register to comment.