Dotrix
Dotrix is an OpenSource 3D engine for Rust developers. The name is a derivation from dot and matrix. Two entities that both together and separately are keystones of rendering.
Important
Dotrix is under heavy refactoring. If you are looking for the latest stable version, then check out release 0.5.3.
The main branch now holds version 0.6 of the engine that is under active development.
Approximate TODO list
- Tasks concept with parallel execution
- New application API with possibility to configure extensions
- Flexible Mesh API that allow to construct meshes and their buffers with validation and various layouts
- Shader preprocessor (includes, conditions, variables)
- UUID format for IDs with namespaces
- ECS update: locks, soft deletion of entities and reuse of released slots, faster lookup for an entity by its ID
- Tasks based assets loading, flexible API, custom assets
- Constant FPS (if host machine is powerful enough)
- GPU Driven PBR Rendering (Prototype)
- Lights in storage buffers
- New Camera
cratemodule - Antialiasing & Depth buffer
- Shadows support
- New GLTF crate
- New Input crate
- Add Overlay and UI support
- Add Material loader from one of toml/json/ron formats
- Add support for PBR materials using texture arrays
- Add PBR pipeline for entities with armature
- Unit tests review
- Migrate math crate to
glam
- API documentation
Studio
Dotrix Studio is a binary that comes within the engine. At this moment it is being used for proof-of-concept tests.
cargo run --release --bin studio
Sponsors
- Johan Andersson <@repi>
Contributors
- Andrew King <@QuantumEntangledAndy>
- Russell Wong <@russellwmy>
3rd Party Assets
Following 3rd party assets are being used in examples