Crate basis_universal

Source
Expand description

Bindings for Binomial LLC’s basis-universal Supercompressed GPU Texture Codec

basis-universal functionality can be grouped into two categories:

  • Encoding: Compresses and encode textures (optionally combining multiple images and mipmap layers in a single file/binary blob)
  • Transcoding: Unpacks the texture into GPU-friendly compression formats. The final format can be chosen based on what the available GPU hardware can support.

Encoding can be done ahead of time using a command line tool in the upstream repository.

The encoded data can either be stored as a file or a binary blob. This data can include multiple images, and each image can store multiple levels. This is commonly used for storing cube textures and textures with precomputed mipmaps. This library also supports generating mipmaps for you.

Please refer to https://github.com/BinomialLLC/basis_universal for more details.

Re-exports§

pub use basis_universal_sys as sys;
pub use transcoding::*;
pub use encoding::*;

Modules§

encoding
Support for compressing raw image data to basis-universal form
transcoding
Support for transcoding basis-universal form to GPU-friendly formats.

Structs§

UserData
Arbitrary data that can be attached to a basis-universal file/binary blob

Constants§

ETC1S_QUALITY_DEFAULT
The default quality level used if CompressorParams::set_etc1s_quality_level is not called
ETC1S_QUALITY_MAX
The maximum quality level that can be provided to CompressorParams::set_etc1s_quality_level
ETC1S_QUALITY_MIN
The minimum quality level that can be provided to CompressorParams::set_etc1s_quality_level
IMAGE_DIMENSION_MAX
Maximum supported image dimension
TEXTURE_DIMENSION_MAX
Maximum supported texture dimension
UASTC_QUALITY_DEFAULT
The default quality level used if CompressorParams::set_uastc_quality_level is not called
UASTC_QUALITY_MAX
The maximum quality level that can be provided to CompressorParams::set_uastc_quality_level
UASTC_QUALITY_MIN
The minimum quality level that can be provided to CompressorParams::set_uastc_quality_level