Skip to content

mitjafelicijan/blpconvert

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Converts BLP textures to images

This tool converts images in BLP texture file format used in many games such as World of Warcraft into PNG files.

It works with DXT1, DXT3 and DXT5 compressions so it should convert anything from WoW.

Note

It should work on all operating systems. There is no funky code in this repository or or any dependencies you need to have installed on your machine. C compiler and Libc is all you need.

Compile & Use

make -B

This will create blpconvert binary. Check available options with ./blpconvert -h.

Basic example of usage is ./blpconvert samples/Ability_Ambush.blp.

You can provide multiple input files or you can also use Bash expansion when providing files to the tool.

./blpconvert samples/*.blp

Program supports exporting to the following formats:

  • PNG
  • BMP
  • JPG
  • TGA
./blpconvert -f bmp samples/Ability_Ambush.blp

Important

By default it will use PNG but you can see use -f flag.

Verbose output

If you provide -v flag the program will output a bunch of diagnostical data.

$ ./blpconvert samples/Ability_Ambush.blp -v
Processing File:
  Fullname: samples/Ability_Ambush.blp
  Folder: samples
  Filename: Ability_Ambush
  Extension: .blp
  Format: png
BLP File Details:
  Type: 1, BLP/DXTC/Uncompressed
  Compression: 2, DXTC
  Alpha Depth: 8
  Alpha Type: 1
  Has Mipmaps: 17
  Width: 64, Height: 64
Reading image data at offset 1172, size 4096 bytes
BLP is compressed with DXTC.
Image has 4096 bytes.
Saving decoded image as PNG...
Successfully saved samples/Ability_Ambush.png

First few pixels of decoded image (RGBA format):
(  0,  0,  0,  0) (  0,  0,  0,  0) (  0,  0,  0,  0) (  0,  0,  0,  0)
(  0,  0,  0,  0) (  0,  0,  0,  0) (  0,  0,  0,  0) (  0,  0,  0,  0)
(  0,  0,  0,  0) (  0,  0,  0,  0) (  0,  0,  0, 51) (184,200,200,221)
(  0,  0,  0,  0) (  0,  0,  0,  0) (184,200,200,221) (184,200,200,255)

Reading material

Special thanks

License

blpconvert was written by Mitja Felicijan and is released under the BSD two-clause license, see the LICENSE file for more information.