Skip to content

gale93/sbixel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sbixel

Sbixel is a very simple pixel physics simulator I made to learn Rust.
It uses macroquad for drawing β€” and I was pleasantly surprised by how simple and awesome it is!

Quick demo (click for youtube link):

Watch the video

⚠️ This project is very basilar and doesn't have much ambition to go anywhere β€” it's mainly a learning sandbox.

How It Works

The simulation uses a "sector" system to reduce unnecessary processing by only simulating active areas of pixels.
All settings related to simulation and performance can be found in src/def.rs.

TODO List (aka: probably won't do soon πŸ˜…)

That said, here's the current (loose) roadmap. If anyone wants to contribute, I’d be happy to give my support:

  • πŸ§ͺ Upgrade water simulation
  • 🌊 Improve sand/water interaction
  • πŸ–ΌοΈ Render pixels only in active sectors instead of rewriting the whole window every frame
  • οΏ½οΏ½ Refactor pixel_already_processed logic β€” it's very trivial and causes potential bugs
  • πŸ’¨ Add gas simulation
  • 🧱 Add static objects

Getting Started

Make sure you have Rust installed. Then, run the project with (for performance go --release):

cargo run

Feel free to explore, break things, and maybe even improve the code 😊

About

πŸ§ͺ A simple pixel physics simulator in Rust using Macroquad

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages