slosh_testbed3d 0.4.0

Testbed for the slosh GPU-based MPM physics simulation library (3D version).
<p align="center">
  <img src="assets/slosh-logo.png" alt="crates.io" width="300px">
</p>
<p align="center">
    <a href="https://discord.gg/vt9DJSW">
        <img src="https://img.shields.io/discord/507548572338880513.svg?logo=discord&colorB=7289DA">
    </a>
</p>

# Slosh: cross-platform MPM GPU physics simulation
## Running the examples

1. Download the Slang compiler libraries for your platform: https://github.com/shader-slang/slang/releases/tag/v2025.16
2. Unzip the downloaded directory, and use its path as value to the `SLANG_DIR` environment variable: `SLANG_DIR=/path/to/slang`.
   Note that the variable must point to the root of the slang installation (i.e. the directory that contains `bin` and `lib`).
3. For the 2D examples, run `cargo run --release --example testbed2`
4. For the 3D examples, run `cargo run --release --example testbed3`

## Notable MPM use-cases

This gives some insights of some interesting usages of MPM (the Material Point Method) for deformable physics
simulation. Note that it doesn’t imply that **slosh** currently implements these models:
- Animation: one very well-known usage of MPM is
  [snow simulation]https://www.disneyanimation.com/publications/a-material-point-method-for-snow-simulation/ by Pixar.
- Engineering: blast movement simulation ([patented]https://patents.google.com/patent/WO2025136223A1).