An ECS game engine, written in pure Rust
This project is in it's early stage, expect breaking changes
There is no documentation yet (other than the example)
In dacho, you insert Systems into Schedules
// A simple example
use dacho::*;
fn main() {
let mut app = App::new("my game");
app.world.spawn(...); // entity: tuple of components
app.insert(...); // system: function with queries
app.run();
}
See the example for more
- Graphics APIs
- vulkan - Renderer will use Vulkan API
- vulkan-validation-layers - Ensures the correct use of Vulkan (requires Vulkan SDK)
- vulkan - Renderer will use Vulkan API
- Shader languages
- wgsl - Shaders will use WebGPU Shading Language (.wgsl)
- It is recommended to open dacho projects as floating in tiling WMs
Licensed under either of
- Apache License, Version 2.0
(LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0) - MIT license
(LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions