Authors: Ancelin BOUCHET & Thibault AMBROSINO
Particles (round 2!)
This project implements a particle engine using OpenGL's compute and geometry shaders.
This project require that you have the sdl2 development libraries installed, if not you can either:
- Install them, ubuntu example:
sudo apt install libsdl2-dev
- Change project to use the bundled feature, for that modify the Cargo.toml file from
to
sdl2 = "versionString"
sdl2 = { version = "versionString", features = ["bundled"]}
For mor info, check the rust sdl2 crate's readme at https://github.com/Rust-SDL2/rust-sdl2.
To build the program, use the cargo build command, the build result will be situated in the target/debug directory. To build on release mode (added optimisation flags), use the --release flag, build results will be in target/release
cargo build # -> target/debug
cargo build --release # -> target/releaseTo run the program, you can use cargo run (similarly with the --release flag for release mode). To pass CLI arguments to the program, you need to use -- before the program's arguments.
cargo run # runs in debug mode
cargo run --release # runs in release mode
cargo run -- --arg # passes --arg to the programEach execution of either cargo build or cargo run will download and build dependencies if needed.
Once you are done, run cargo clean to cleanup.
You can access the CLI's help by passing the -h or --help argument.
You can set the logging level during execution by setting the LOG_LEVEL environment variable to one of trace, debug, info, warn, error, or off (all case insensitive). More detailed explanations at https://docs.rs/env_logger/latest/env_logger/.
Mouse movements: Look aroundZQSD: Horizontal movementSpace: Move upLeft Shift: Move downTab: Toggle cursor captureLeft clickon window: Enable cursor captureEscape: Close applicationB: Toggle broken capture fixL: Log debug info