Cloth Bind - Self Collision settings
#1
First off, this is a lot of fun.  Thanks.  Smile

I am playing around with cloth.  I am having no luck getting it not to inner-penetrate itself on both single sided meshes and closed, inflated meshes.

What are the best settings to tweak to get this to work?  Overall samples, time steps, ?
  Reply
#2
Was just about to post this same issue.

I've been playing with time-steps, bind solver samples, physX samples (although not sure these are having an effect), and have tried re-arranging my nodes a bunch of times.

When I crank the settings super high I get good cloth collision (it will hit the ground and crumple), but no-inter collision (wont collide with itself) and no inter-cloth collision (wont collide with other cloths in the same sim).


Also had this when testing the sofy-body test scene, and changing the particle instance to geospheres.

That said, it's super fast and an absolute blast, thanks Ty!
  Reply
#3
Hey guys,

Right now the cloth solver has no dedicated vertex-to-face or edge-edge self/inter collisions. I worked hard to get that into the beta release but didn't make it in time since it's a very complicated task to get right. And now with the size of the todo list with regards to fixing bugs people have found and other features that need priority, the dedicated cloth mesh collision solver is pushed further back...

The solution at the moment is to rely on vertex-to-vertex collisions using a Particle Physics operator, and ensuring your cloth mesh is dense enough so that faces don't pass through each other. The Particle Physics operator is integrated into the main binding solver, so it will play nicely with cloth sims. A few key things to note:

Generally for cloth you want your flow time steps to be 1/4 or higher. Also, do not be afraid to crank your Particle Bind Solver substeps up really high. 100 or more for hires cloth. However, the higher you put your flow time steps, the lower you can put your PBS steps. For example, 1/4 flow step and 100 PBS steps can be changed to 1/8 flow step and 50 PBS steps without losing accuracy.

Then ensure that the collision radius of your Particle Physics operator is enough so that cloth vertices won't pass through each other. Cranking up the Particle Physics collision tolerance value will also help solve collisions with higher simulation substeps, as more collisions will be caught between fast moving particles. There are display settings you can use to preview your collision radius size. Also make sure to turn on "ignore binding neighbors" so vertices of the same face don't collide with each other, which is unnecessary to get proper collisions and can lead to visual artifacts.

With the right settings (ensuring your cloth is hires and the Particle Physics collision radius is roughly half the length of any given face on your cloth mesh), you can get very decent results with this setup, as seen in this post:

https://www.instagram.com/p/Bu1BEPVnwfy/

I have updated the example scenes with a specific cloth self-collisions demo that you can grab here, to see such a setup:

http://apps.tysonibele.com/tyflow/scenes...scenes_002
  Reply
#4
I figured out how to add the operator to prevent the collisions which is why I deleted the topic, but I was still having issues where no matter what my settings were, it still happens, and especially when I changed the steps to say, 1/4 - 1/32 I actually get much worse results with spikey verts getting stuck in my colliders, etc. Was wondering what the best settings were for efficiency.

I ran into similar issues with lucid so I figured it was just inherent to the particle based approach in general.

I'll check out the file tonight. Thanks Tyson!
  Reply
#5
I'd have to look at your specific setup to see what's going on, but I wouldn't say artifacts like what you describe are expected.

If you have further issues let me know Smile
  Reply
#6
Ok so.. I played around with my setup. I took your tearing cloth file and made changes.. the problem, I think, was that I added the particle physics above the object test (that holds the corners). This results in some pinched verts inside of my collider. When I move that operator below the Object test, all is well. Does that make sense?

Thanks again for clearing this all up and the added file. I think part of the issues have to do with stretching cloth. Is that because the particles get too spaced apart perhaps?
  Reply
#7
Could be...there are a bunch of different factors that are somewhat delicate when it comes to robust cloth sims.
  Reply


Forum Jump: