crucible
Type | Name |
---|---|
tree | executables |
tree | libraries |
tree | samples |
blob | .gitignore |
blob | CHANGELOG.md |
blob | Cargo.lock |
blob | Cargo.toml |
blob | README.md |
Crucible
Crucible is a cross-platform multimedia application framework written in Rust. It is currently under active pre-1.0 development.
If you are interested in building game engines, multimedia authoring programs, level editors, or any other kind of software that would benefit from features like 2D and 3D rendering, audio processing, kinematics simulation, scene graph management, a scripting engine, or support for peripherals like game controllers, you should watch this space.
Availability
Currently, Crucible's source code is free to read online, but not to download. This will be the case pretty much until 1.0, at which point I'll decide whether to make it properly open source or not. My primary motivation for this model is to have some knowledge and control over who exactly gets to benefit from my work, while still being able to share my development progress. I don't know how realistic that is, since you can always just write a scraper to download the files over HTTP, but I think you would need to be very bored, or very petty, to go to all that effort for something like this.
For a similar reason, I have not yet chosen a license for this code, making it effectively all rights reserved. I'm not planning to lawyer up on anybody, but again, please don't just take it without asking.
Long story short, have fun reading the source for now, if that's your thing. I'll prepare some kind of official distribution whenever it feels right c:
Roadmap
NOTE: This will likely fluctuate and stagnate a lot, since I can't work on Crucible all the time right now. The only real master list of tasks is in my head. This is mostly just to remind myself what the current goal is, and a few waypoints along the way.
- [x] Repository created - August 11, 2025
- [x] Configuration loadable from directory or zip file - August 14, 2025
- [ ] Open a window
- [ ] Render a mesh (this one will take a while)
- [ ] Load and run a script (I'm designing my own scripting language, but I'll probably use Lua or something in the meantime)
- [ ] Load and play some audio (I've never done this one before!)
- [ ] Implement a simple kinematics engine (this one will also take a while)
- [ ] Try to make a Pong clone
Author
Crucible is being designed and implemented by @echowritescode.