[][src]Crate stb

Rust API for stb libraries (see details https://github.com/nothings/stb)


stb libraries are designed with the following priorities:

  • Easy to use
  • Easy to maintain
  • Good performance

Sometimes I let "good performance" creep up in priority over "easy to maintain", and for best performance I may provide less-easy-to-use APIs that give higher performance, in addition to the easy-to-use ones. Nevertheless, it's important to keep in mind that from the standpoint of you, a client of this library, all you care about is #1 and #3, and stb libraries DO NOT emphasize #3 above all.

Some secondary priorities arise directly from the first two, some of which provide more explicit reasons why performance can't be emphasized.

  • Portable ("ease of use")
  • Small source code footprint ("easy to maintain")
  • No dependencies ("ease of use")



Fabian "ryg" Giesen's real-time DXT compressor Fabian "ryg" Giesen's real-time DXT compressor


Quick-and-dirty easy-to-deploy bitmap font for printing frame rate, etc Intended for when you just want to get some text displaying in a 3D app as quickly as possible.


Image loading/decoding Rust API for image loading/decoding from file/memory: JPG, PNG, TGA, BMP, PSD, GIF, HDR, PIC. See https://github.com/nothings/stb/blob/master/stb_image.h


Image writing to disk: PNG, TGA, BMP A module for writing images to C stdio or a callback.


Revised Perlin noise (3D input, 1D output)