//!
//! ## Crate Structure
//! This library is made up of several modules:
//! - [`core`] declares the relationship between any [`Canvas`](core::Canvas) (an object that can be drawn to) and the library's primitives and anything else that can be drawn to the screen.
//! - [`view`] defines the [`View`](view::View), a [`Canvas`](core::Canvas) capable of displaying
//! - [`ascii`], [`containers`] and [`primitives`] which all offer different ways to draw to a [`Canvas`](core::Canvas). [`containers`] also has a basic collision library!
//! - [`mesh3d`] and [`view3d`], which hold the [`Mesh3d`](mesh3d::Mesh3D) and [`Viewport`](view3d::Viewport) objects respectively, and handle everything 3D-related. [`Viewport`](view3d::Viewport)
pub use gemini_mainloop as gameloop;
pub use fps_gameloop;