crayon 0.1.0

An experimental entity-component-based multithread game engine.
Documentation

What is This?

Build Documentation Crate Downloads License

Crayon is an experimental purpose game engine, written with a minimalistic modular design philosophy. Its built from the ground up to focus on cache friendly data layouts in multicore environments with entity-component based architecture.

It is loosely inspired by some amazing blogs on bitsquid and molecular. Some goals include:

  • Extensible through external code modules;
  • Run on [x]macOS, [x]Windows, iOS, Android, WebAssembly from the same source;
  • Stateless, layered, multithread render system with OpenGL(ES) 2.0+ backends;
  • Entity component system with a data-driven designs;
  • Unified access to input devices across platforms;
  • Asynchronous data loading from various filesystem;
  • etc.

Warning: This project is a work in progress and far from a stable version right now.

Quick Example

For the sake of brevity, you can also run a simple and quick example with commands:

git clone git@github.com:shawnscode/crayon.git && cd crayon/crayon-examples
cargo run imgui

Examples and Screenshots

Check out here for details.

ImGui