- Notifications
You must be signed in to change notification settings - Fork0
🦀 Rust-based remake of the 3D Pipes Screensaver
License
FaceFTW/rust-pipes
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A remake of the classic Windows 98 Screensaver in Rust. Built to be resilient, configurable, and cross-platform (including for Web targets)
This project is still in development.
Web Development:https://pipes.faceftw.dev
This project uses cargo for the standard Rust project build cycle. You can do the following tasks with cargo as follows:
Step | Command |
---|---|
Building | cargo build |
Running (No Args) | cargo run |
Running (w/ Args) | cargo run -- <args> |
Testing | cargo test |
This project also has a WASM target that is used for the web version, and is compiled differently from the standard version (i.e. lack of argument parsing).
cd ./webnpm install# If cloning for the first timenpx wasm-pack build".." --target web --out-name web --out-dir web/pkgnpm run serve
I've used these resources to help build the project. Without them, this project would likely take forever to figure out how to complete.
- A lot of the original logic/design comes from the original source code for the screensaver in theMicrosoft Windows NT 4.0 SDK found under
MSTOOLS\SAMPLES\OPENGL\SCRSAVE
- 1j01's JS implementation has also been instrumental to help with the translation of the original code written in "Microsoft C++ Dialect"
I'd also like to give a shoutout to these crates that I used that sped up the development of the project:
- asny/three-d is an excellent crate for doing Graphics/OpenGL programming in Rust. It provides a great foundation for development regardless of the abstraction level you want to work at with great documentation and examples to accompany it. The developer is also very responsive and evenfixed a bug that affected this project!