1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
//! # What is This? //! //! Crayon is a small, portable and extensible game framework, which 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 some amazing blogs on [bitsquid](https://bitsquid.blogspot.de), //! [molecular](https://blog.molecular-matters.com) and [floooh](http://floooh.github.io/). //! //! Some goals include: //! //! - Extensible through external code modules; //! - Run on macOS, Linux, Windows, iOS, Android from the same source; //! - Stateless, layered, multithread render system with OpenGL(ES) 3.0 backends; //! - Entity component system with a data-driven designs; //! - Unified interface for handling input devices across platforms; //! - Asynchronous data loading from various filesystem; //! - etc. //! //! Please read the documents under modules for specific usages. //! //! ## Quick Example //! //! For the sake of brevity, you can also run a simple and quick example with commands: //! //! ```sh //! git clone git@github.com:shawnscode/crayon.git && cd crayon/crayon-examples //! cargo run imgui //! ``` #[macro_use] extern crate cgmath; #[macro_use] extern crate failure; extern crate gl; extern crate glutin; extern crate zip; pub extern crate rayon; #[macro_use] pub mod utils; pub mod application; pub mod ecs; #[macro_use] pub mod graphics; pub mod resource; pub mod input; pub mod prelude; pub mod math;