Features
Here you can find a list of features that are currently supported by the library.
-
Multi platform architecture
Windows only implemented right now
rawwindowhandle integrated and working on WASM intergration -
Multi graphics api support
wgpu integration done -
Multi threading architecture with different Phases > Systems > Jobs
See more info in sabicore crate section related to scheduling -
CPU profiling using Chrome Trace Event format and usable through chrome://tracing/
See more info in sabiprofiler crate section - GPU profiling using RenderDoc by Baldurk Karlsson
-
Blender addon written in Python and Rust built and copied into right folder to be used right away
See more info in sabiblender crate section) -
Launch and execute SABI directly from Blender
Exporting scene as Khronos GLTF, binarizing and loading it into SABI -
Data binarization, shader compilation, etc as background task and per target platform
See more info in sabibinarizer crate section - Hot reload of code while INOX engine is running
- Hot reload of data reloading on the fly while INOX engine is running
- In-game GUI integration using egui by emilk
- Documentations using mdBook
- Continous integration and build support using Github Actions
- INOX <-> Blender communication through TCP connection
- Create custom Logic Nodes editor in Blender
- Possibility to define and use custom nodes in external dlls
- Integrated WASM as target
- Added meshoptimizer library by Arseny Kapoulkine
- Possibility to run Phases in parallel when not dependent
- Plugin indipendent and ability to enable\disable them at runtime
- Dynamic vertex layout and storage buffers per-shader
- Support for both glsl and wgsl shaders
- Integrate PBR rendering
TODO:
- Integrate Meshlet generation and gpu culling
- Integrate Android as target
- Add multithreading workers for WASM target on web
- Raytracing on GPU
- Quick example of game
- Integrate KTX universal texture compression