I've made a "Falling sand" Sandbox with Python (using pygame)
It's extremely slow and incefficient but it does work :)

It implements:

 \- Sand &amp; Water Physics 

\- Buoyancy 

\- Heath transfer 

\- Status changes (ice -&gt; water -&gt; vapor)

Here's a demo for how it looks like in action: [https://www.youtube.com/watch?v=7cgfJqnVVTg](https://www.youtube.com/watch?v=7cgfJqnVVTg)

And here's a link to the code: [https://github.com/SudoOmbro/OmbroBox](https://github.com/SudoOmbro/OmbroBox)

Thanks for reading :)