BLP
Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.
Blizzard BLP Texture Preview.
At a glance
| Purpose | A Blizzard BLP texture: an image with mipmaps used by WarCraft III and World of Warcraft, compressed as JPEG, a palette, DXT or raw BGRA. |
| Extensions | .blp |
| Poka parser | poka-blp |
| Viewer | poka-metadata-card-viewer |
| Depth tier | Metadata card (see Depth tiers) |
| Breadth tier | B4 Summary (see Breadth tiers) |
How much Poka reads
B4 Summary. The container and metadata are read and summarised (counts, properties, structure), but the main content is not rendered.
Confidence: medium (the reviewer read the code). Basis: Reviewed 2026-10-26: read parsers/poka-blp/src/main.rs (249 lines) and plugin.json. No unit tests or tests/samples.rs, and the corpus has no .blp, .blp1 and .blp2 sample. Covers .blp, .blp1 and .blp2. The card reads the BLP0, BLP1 or BLP2 header: type, compression, alpha size and type, mipmap flag, width and height, the mipmap offsets and sizes (levels with data and their total payload). Judgement: B4, because the header and mipmap table are read but no pixel is decoded.
What Poka does not read
- The texture is not decoded or shown: no JPEG, palette, DXT1, DXT3, DXT5 or BGRA pixels
- The palette and the shared JPEG header are not read
- BLP0 is read with the BLP1 layout; its external mipmap files are not followed
- The whole file (up to 128 MiB) is read without a cap flag
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- blp (blp-rs) (candidate; MIT; Rust; https://github.com/WarRaft/blp-rs) — Pure Rust reader and writer with CLI and viewer; README claims BLP0/1/2 though the About text mentions BLP1 only.
- image-blp (candidate; MIT; Rust; https://lib.rs/crates/image-blp) — Decodes BLP0/1/2 into the image crate DynamicImage; last release 1.2.0 (Oct 2023).
- Pillow (BlpImagePlugin) (candidate; MIT-CMU; Python; https://pypi.org/project/pillow/) — Reads JPEG-compressed or raw BLP1 and all BLP2 types per the Pillow handbook.
Sources
- parsers/poka-blp/src/main.rs
- parsers/poka-blp/plugin.json