Cloth simulations spend 70-80% of their time on collision handling, which is brutally hard because triangle meshes must be tested and resolved repeatedly. Moving this work to the GPU and tracking only deforming regions gets you 9× faster collisions and 3× faster overall simulation, hitting 8-10 frames per second for interactive garment testing.
Questions this video answers
70%–80% of total simulation time.
Up to 9× faster for the collision computation step.
Over 3× faster for the whole cloth simulation.
About 8–10 frames per second.
Chapters
Dear fellow scholars, this is two minute papers with Today we are going to talk a bit about the glory and the woes of cloth simulation programs. In these simulations we have several 3D models that are built from up to several hundreds of thousands of triangles. And as they move in time. The interesting part of the simulation is whenever collisions happen. However, evaluating how these meshes collide is quite difficult and time consuming. Basically, we have to tell an algorithm that we have a piece of cloth with a hundred thousand connected triangles here and another one there. And now have a look and tell me which collides with which and how they bend and change in response to these forces. And don't forget about friction and repulsive forces. Also, please be accurate because every small error adds up over time. And do it several times a second so we can have a look at the results interactively. Well, this is a quite challenging problem and it takes quite long to compute. So much so that 70 to 80% of the total time taken to perform the simulation is spent with collision handling. So how can we make it not take forever? Well, one way would be to try to make sure that we can run this collision handling step on the graphics card. This is exactly what this work does. And, and in order to do this, we have to make sure that all of these evaluations can be performed in parallel. Of course, this is easier said than done. Another difficulty is choosing the appropriate time steps. These simulations are run in a way that we check and resolve all of the collisions and then we can advance the simulation forward by a tiny amount. This amount is called a time step, and choosing the appropriate time step has always been a challenge. You see, if we set it to too large, we will be done faster and compute less. However, we will almost certainly miss some collisions because we skipped over them. The simulation may end up in a state that is so incorrect that it is impossible to recover from and we have to throw the entire thing out. If we set it to too low, we get a more robust simulation. However, it will take many hours to days to compute. To remedy this, this technique is built in a way such that we can use larger time steps. That's excellent news. Also, the collision computation part is now up to nine times faster. And if we look at the cloth simulation as a whole, that can be made over three times faster, as you see here. This is especially nice because we can test how these garments react to our manipulations at 8 to 10 frames per second. If you have a closer look at the paper, you will find another key observation which states that most of the time, only a small sub region of the simulated cloth undergoes deformation due to response forces. And this knowledge can be kept track of, which contributed to cutting down the simulation time significantly. Thanks for watching and for your generous support, and I'll see you next time.