Simple game engine written in Rust, without any dependencies except the most necessary ones (WinAPI, OpenGL, OpenAL, and bindgen to generate bindings).
Supported asset formats:
- textures: BMP (8/24/32 bits per pixel)
- fonts: BFF (8/24/32 bits per pixel)
- audio: WAV (mono and stereo)
This project is done entirely for fun and challenge, so it doesn't have a lot of components present in other modern engines - nevertheless, the goal is to make it fully functional at some point.
Lemao components:
- lemao-bindgen - bindgen fork with a custom change allowing to generate function pointers without Option wrapper
- lemao-core - the main subsystem containing the renderer and coordinating the work of other components
- lemao-framework - entity-component-system framework with a set of other utilities
- lemao-math - a set of math helpers (vectors, matrices, colors) with support for SIMD
- lemao-openal - binding for OpenAL
- lemao-opengl - binding for OpenGL
- lemao-physics - basic physics engine with a support for boxes, circles, rotational responses and friction
- lemao-platforms
- lemao-common-platforms - common interface implemented by all window subsystems
- lemao-linux-x11 - window subsystem for Linux and X11
- lemao-windows-winapi - window subsystem for Windows and WinAPI
- lemao-ui - a set of UI components