Dear Fellow Scholars, this is Two Minute Papers with Dr. Károly Zsolnai-Fehér.
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 truly remarkable.
To simulate all these, many recent methods build 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, 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 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 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 our okay, particles are bouncing off of the jello…and then…uh-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 thousand 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 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 off-line 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 jello simulations!
What a time to be alive!
This episode has been supported by Lambda.
If you're a researcher or a startup looking for cheap GPU compute to run these algorithms,
check out Lambda GPU Cloud.
I've talked about Lambda's GPU workstations in other videos and am happy to tell you that
they're 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.com/papers 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!