BLPaletter converts BMP, TGA and JPG images to paletted BLP images.
These often compress better than usual JPG compressed BLPs.
For example it compresses a 256x256 texture to 33kb in a map of mine.
Note that paletted blps work better with MPQ archive compression than ordinary jpg blps, so that you can only accurately compare file size after importing them into a map.
Since version 1.3 it can also create JPG compressed BLPs.
Fixed Mipmapping issues in version 1.4.
Fixed an alpha channel issue in version 1.5b.
Get the latest version (check link above)
The C++ source code is also available
hereBotanic made a GUI for it, you can get it
hereAn older GUI made by Acaykath is also available, but I think it doesn't support the latest features that I've added. It's available
hereUSAGEBLPaletter <input.tga|input.bmp|input.jpg> [<output.blp>] [<number of colors / quality>] [-j | -p] [-mipN]
Replace the N of the -mip parameter with a number between 1 and 16.
This will limit the number of generated mipmaps to a max of N.
For icons and interface textures always use -mip1 because they do not use mipmapping . Or -mip2 if you support people with really old computers who have the texture quality setting at low.
For model textures simply leave out the -mip parameter.EXAMPLES BLPaletter D:\icons\BTNSomeIcon.tga -mip1
-> Will create D:\icons\BTNSomeIcon.blp with 256 colors and 1 mipmap
BLPaletter D:\icons\BTNBlah.bmp 128
-> Will create D:\icons\BTNBlah.blp with 128 colors
BLPaletter D:\icons\a.tga D:\icons\b.blp 64
-> Will create D:\icons\b.blp with 64 colors
BLPaletter "C:\Program Files\Something\SomeTexture.tga" Target.blp
-> Will create Target.blp with 256 colors in the current directory (watch out: you need " when a path contains a space)
BLPaletter C:\x.bmp C:\y.blp 85 -j
-> Will create C:\y.blp with JPG compression and a quality of 85%
BLPaletter ..\Textures\MountainKing.bmp -p -mip8
-> Will create ..\Textures\MountainKing.blp with 256 colors (paletted) and 8 mipmaps at max
CHANGES IN 1.5Fixed a bug that corrupted the alpha channel on images smaller than 128 x 128
CHANGES IN 1.4Now auto-generates mipmaps so it works properly with textures when looking from far away
Added -mipN parameter (replace N with the number of mipmaps you wanna have, eg. -mip1 for icons)
Fixed a visual problem related to wrong mipmap offsets
Cleaned up the source code
CHANGES IN 1.3.2It can now read jpg files too.
CHANGES IN 1.3Added option to use jpg compression (-j vs. -p switch, -p is assumed by default)
With the -j switch on, the number of color parameter controls the quality of the output blp (values between 1 and 99 please)
CHANGES IN 1.2Removed the 'Press any button to continue' message.
CHANGES IN 1.1Added optional parameter to specify the number of colors (16 - 256).
Added Floyd-Steinberg-Dithering for much better looking results.
Thanks to TheProphet for a few utility functions, BlackDick and Magos
for their blp format specifications, PipeDream, the IJG for their free
Jpeg Library, Litany for providing test files.