Is Simulating Soft and Bouncy Jelly Possible? 🦑

Károly Zsolnai-Fehér walks through how the material point method lets computers simulate soft, bouncy materials like jelly and skin. Recent advances handle thousands of hair strands and two-way coupling with fluids, though rendering still takes seconds to minutes per frame. A new paper fixes particle-sticking problems that plagued earlier versions.
Questions this video answers
April 25, 2020
>10,000 hair strands
Seconds per frame and sometimes minutes per frame (offline, not real-time)
Can train ImageNet to 93% accuracy for less than $19
Lambda GPU Cloud costs less than half of AWS and Azure
Chapters
After reading a physics textbook on the laws of fluid motion, With a little effort, we can make a virtual world come alive by writing a computer program that contains these laws, resulting in beautiful fluid simulations like the one you see here. The amount of detail we can simulate with these programs is increasing every year, not only due to the fact that hardware improves over time, but also the pace of progress in computer graphics research is, is truly remarkable. To simulate all these many recent methods built on top of a technique called the material point method. This is a hybrid simulation technique that uses both particles and grids to create these beautiful animations. However, when used by itself, we can come up with a bunch of phenomena that it cannot simulate properly. One such example is cracking and tearing phenomena, which has been addressed in a previous paper that we covered a few videos ago. With this, we can smash Oreos, candy, crabs, pumpkins, and much, much more. In a few minutes, I will show you how to combine some of these aspects of a simulation. It is going to be glorious. Or maybe not so much. Just give me a moment and you'll see beyond that. When using this material point method. Click. Coupling problems frequently arise. This means that the sand is allowed to have an effect on the fluid, but at the same time, as the fluid sloshes around, it also moves the sand particles within. This is what we refer to as two way coupling. If it is implemented correctly, our simulated honey will behave as real honey in the footage here and support the dipper. These are also not trivial to compute with the material point method and and require specialized extensions to do so. So what else is there to do? This amazing new paper provides an extension to handle simulating elastic objects such as hair rubber. And you will see that it even works for skin simulations and it can handle their interactions with other materials. So why is this useful? Well, we know that we can pull off simulating a bunch of particles and, and a Jello simulation separately. So it's time for some experimentation. This is the one I promised earlier. So let's try to put these two things together and see what happens. It seems to start out, okay, particles are bouncing off of the Jello. And then, oh, look, many of them seem to get stuck. So can we fix this somehow? Well, this is where this new paper comes into play. Look here. It starts out somewhat similarly. Most of the particles get pushed away from the Jello. And then look, some of them indeed keep bouncing for a long, long time. And none of them are stuck to the Jello. Glorious. We can see the same phenomenon here with three Jello blocks of different stiffness values. With this we can also simulate more than 10,000 bouncy hair strands, and to the delight of a computer graphics researcher, we can even throw snow into it and expect it to behave correctly. Braids work well too, and if you remember, I also promised some skin simulation. And this demonstration is not only super fun. For instance, the ones around this area are perhaps the most entertaining, but the information density of this screen is is just absolutely amazing. As we go from bottom to top, you can see the effect of the stiffness parameters, or in other words, the higher we are, the stiffer things become. And as we go from left to right, the effect of damping increases and you can see not only a bunch of combinations of these two parameters, but you can also compare many configurations against each other at a glance on the same screen. Loving it. So how long does it take to simulate all this? Well, given that we are talking about an offline simulation technique, this is not designed to run in real time games as the execution time is typically not measured in frames per second, but seconds per frame and sometimes even minutes per frame. However, having run simulations that contained much fewer interactions than this that took me several days to compute, I would argue that these numbers are quite appealing for a method of this class. Also note that this is one of those papers that makes the impossible possible for us. And of course, as we always say around here, two more papers down the line and it will be significantly improved. For now, I am very impressed. Time to fire up some elaborate Jallo simulations. What a time to be alive. This episode has been supported by Lamda. If you're a researcher or a startup looking for cheap GPU compute to run these algorithms, check out Lamda GPU Cloud. I've talked about Lambda's GPU workstations in other videos and am happy to tell you that they are offering GPU cloud services as well. The Lambda GPU Cloud can train ImageNet to 93% accuracy for less than $19. Lambda's web based IDE lets you easily access your instance right in your browser. And finally, hold on to your papers because the Lambda GPU Cloud costs less than half of AWS and Azure. Make sure to go to lambdalabs.compapers and sign up for one of their amazing GPU instances today. Our thanks to Lambda for helping us make better videos for you. Thanks for watching and for your generous support and I'll see you next time.










