Show HN: Gravitle – 2D soft-body engine built with Rust for the web
loicbourgois.github.io
loicbourgois.github.io
Drag is computed[2] for all the particles using something similar to the Drag equation[3].
Also, like electricslpnsld said, having a small enough time step helps.
[1] https://github.com/loicbourgois/gravitle/blob/master/fronten...
[2] https://github.com/loicbourgois/gravitle/blob/master/src/par...
E: And started to work, could just have been some fringe issue, the page was just a white screen and didn't respond.
how much better is the performance due to rust/wasm compared to implementing the physics in JS?
I don't have solid metrics, but using only JS for a previous attempt, I couldn't have 8 points running smoothly [2]. Now it works with 500[3].
I'm not sure whether it's because I have a better understanding of the problems now or just because Rust/wasm is way faster, but what is sure is that Rust makes it easier to write performant code, even if it's harder to learn at first.
[1] https://github.com/loicbourgois/gravitle#learn-more
[2] https://loicbourgois.github.io/treeminor/demo/heart
[3] https://loicbourgois.github.io/gravitle/playground.html?test...