Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mitulagr2/ten-k-balls
Physics simulation with 10K bouncing balls in your browser.
https://github.com/mitulagr2/ten-k-balls
bevy rapier2d rust wasm
Last synced: about 1 month ago
JSON representation
Physics simulation with 10K bouncing balls in your browser.
- Host: GitHub
- URL: https://github.com/mitulagr2/ten-k-balls
- Owner: mitulagr2
- Created: 2024-02-03T12:44:20.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2024-05-09T13:28:29.000Z (8 months ago)
- Last Synced: 2024-05-09T16:57:38.714Z (8 months ago)
- Topics: bevy, rapier2d, rust, wasm
- Language: JavaScript
- Homepage: https://ten-k-balls.netlify.app
- Size: 5.06 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ten-k-balls
## Summary
Physics simulation with 10K bouncing balls in your browser.
## Solution
This uses Rust and WebAssembly for a high-performance browser-based simulation. It integrates the Bevy engine and Rapier physics library to realistically simulate 10,000 balls colliding and bouncing in a box.
### Features
1. **Efficient Physics Simulation:** The core feature must be the efficient handling and smooth performance.
2. **WebAssembly Optimization:** Optimizing the Rust code to run efficiently as WebAssembly.
3. **Responsiveness and Scalability:** The simulation scales correctly across different devices and resolutions, offering a consistent experience.
4. **Interactive Controls:** Controls to change the gravity, apply forces to the balls, or alter conditions like the boundary walls' elasticity.
5. **Dynamic User Interface:** Enables users to easily understand and manipulate the simulation settings.
6. **Real-Time Performance Monitoring:** Display key performance metrics such as FPS and simulation step time on the screen.
7. **Shareable Setups:** Enable users to create, save, and share their own unique simulation settings with others.
8. **Visual Effects:** Enhanced visual effects options, like slow motion and color shifts based on velocity or collision intensity.
## Phases
### Phase 0 / V0 / Alpha
Run simulation within browser.
### Phase 1 / V1 / Beta (Optional)
Responsive website and interactive controls.
### Phase 2 / V2 / Release Candidate (Optional)
Real-time performance monitoring.
## Implementation / Technical Details
- Tech stack:
- Rust
- Bevy with rapier2d
- WebAssembly