stb/
lib.rs

1//! Rust API for stb libraries (see details https://github.com/nothings/stb)
2//!
3//! Philosophy
4//!
5//! stb libraries are designed with the following priorities:
6//! - Easy to use
7//! - Easy to maintain
8//! - Good performance
9//!
10//! Sometimes I let "good performance" creep up in priority over "easy to maintain",
11//! and for best performance I may provide less-easy-to-use APIs that give higher
12//! performance, in addition to the easy-to-use ones. Nevertheless, it's important
13//! to keep in mind that from the standpoint of you, a client of this library,
14//! all you care about is #1 and #3, and stb libraries DO NOT emphasize #3 above all.
15//!
16//! Some secondary priorities arise directly from the first two, some of which
17//! provide more explicit reasons why performance can't be emphasized.
18//!
19//! - Portable ("ease of use")
20//! - Small source code footprint ("easy to maintain")
21//! - No dependencies ("ease of use")
22
23/// Quick-and-dirty easy-to-deploy bitmap font for printing frame rate, etc
24#[cfg(feature = "stb_easy_font")]
25pub mod easy_font;
26
27/// Fabian "ryg" Giesen's real-time DXT compressor
28#[cfg(feature = "stb_dxt")]
29pub mod dxt;
30
31/// Image loading/decoding
32#[cfg(feature = "stb_image")]
33pub mod image;
34
35/// Image writing to disk: PNG, TGA, BMP
36#[cfg(feature = "stb_image_write")]
37pub mod image_write;
38
39/// Revised Perlin noise (3D input, 1D output)
40#[cfg(feature = "stb_perlin")]
41pub mod perlin;