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
//! GPU-accelerated tilemap functionality for bevy.
//! Aims at rendering tilemaps with lightning speed by using just a single quad per map (layer)
//! and offloading the actual rendering to GPU.
//! This should be faster than most other bevy tilemap implementations as of this writing.
//!
//! ## Features
//!
//! - Very high rendering performance.
//! - Tilemaps can be very large or have many "layers"
//! - Rectangular and isometric tile maps.
//!
//! ## How it works
//!
//! The principle is probably not new but nonetheless quite helpful: The whole tilemap (-layer) is
//! rendered as a single quad and a shader cares for rendering the correct tiles at the correct
//! position.
pub mod map;
pub mod map_uniform;
pub mod map_builder;
pub mod bundle;
pub mod plugin;
pub mod pipeline;
pub mod shader;
pub mod extract;
pub mod prepare;
pub mod queue;
pub mod tile_projection;
pub mod prelude {
pub use crate::bundle::MapBundle;
pub use crate::map::{Map, MapIndexer, MapReadyEvent, MeshManagedByMap};
pub use crate::plugin::FastTileMapPlugin;
pub use crate::tile_projection::{TileProjection, IDENTITY, AXONOMETRIC};
}
pub use crate::bundle::MapBundle;
pub use crate::map::{Map, MapIndexer, MapReadyEvent, MeshManagedByMap};
pub use crate::plugin::FastTileMapPlugin;
pub use crate::tile_projection::{TileProjection, IDENTITY, AXONOMETRIC};