diff --git a/Cargo.lock b/Cargo.lock index fc19a4b..61304c0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -297,7 +297,7 @@ dependencies = [ [[package]] name = "blue_engine" -version = "0.5.10" +version = "0.5.12" dependencies = [ "android_logger", "bytemuck", diff --git a/Cargo.toml b/Cargo.toml index 221a72c..a2f0d2a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "blue_engine" -version = "0.5.10" +version = "0.5.12" authors = ["Elham Aryanpur "] edition = "2021" description = "General-Purpose, Easy-to-use, Fast, and Portable graphics engine" diff --git a/src/lib.rs b/src/lib.rs index 389915e..f90212f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -50,6 +50,18 @@ //! The code of the engine is organized in a rather different manner than traditional in the //! language. There are inspirations from other languages to make it easier to navigate the //! project. +//! +//! ## Older hardware +//! +//! The engine uses WGPU under the hood for rendering. WGPU by nature is designed for modern hardware, so if you have or want to +//! target older hardware, you might need to add a couple more things to WindowDescriptor during Engine::new_config: +//! +//! 1) set a backend that targets your older hardware, such as GL using the backends field: `backend: blue_engine::wgpu::Backends::GL` +//! 2) experiement with the limits field, which describes what features you need. `limits: blue_engine::wgpu::Limits::default()`. there +//! are three options for limits: `default` for normal hardware, `downlevel_defaults` which are compatible with GLES-3 and D3D-11, or +//! `downlevel_webgl2_defaults` which is also compatible with WebGL2, and the lowest level for limits and can support very old hardware. +//! +//! with these two changes, hopefully you can get Blue Engine to run on older hardware. If not, please let me know so I can help you further. pub(crate) mod definition; /// contains all the declarations such as structs, exports, enums, ...