Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

What do you use to compress BLPs?

Discussion in 'Texturing & Surfacing' started by HerrDave, May 28, 2015.

  1. HerrDave

    HerrDave

    Joined:
    Dec 23, 2013
    Messages:
    1,095
    Resources:
    165
    Models:
    137
    Icons:
    20
    Skins:
    8
    Resources:
    165
    I am having some wildly unnecessary absolutely mad problems with compressing a skin, 'tis a 256x256 picture that when default was 41kb, is now 215kb, and none of the compression techniques I have tried have worked.

    Tried and Failed
    -------------------
    -WC3 Image Extractor save as 75%
    -GIMP2 compression level 9 when saving
    -Reducing of the number of colors

    Here is the skin.

    http://www.hiveworkshop.com/forums/pastebin.php?id=gnergq

    [​IMG]

    Original Texture base

    [​IMG]
     
  2. Flux

    Flux

    Joined:
    Feb 6, 2014
    Messages:
    2,333
    Resources:
    28
    Maps:
    1
    Spells:
    19
    Tutorials:
    2
    JASS:
    6
    Resources:
    28
    Have you tried using BLP Lab?

    Try setting it to 60% to 70%. The quality change is hardly visible but the file size reduces drastically
     
  3. HerrDave

    HerrDave

    Joined:
    Dec 23, 2013
    Messages:
    1,095
    Resources:
    165
    Models:
    137
    Icons:
    20
    Skins:
    8
    Resources:
    165
    That worked amazingly well! I was losing my mind over this problem for a while.

    +rep, and many thanks!
     
  4. Dr Super Good

    Dr Super Good

    Spell Reviewer

    Joined:
    Jan 18, 2005
    Messages:
    26,123
    Resources:
    3
    Maps:
    1
    Spells:
    2
    Resources:
    3
    Icons should use palleted colours for compression. Since they are small and often have a background they compress very well when placed in the MPQ archive (do note that palleted images will be big outside the archive but generally compress well in the archive due to them being uncompressed data). As such you actually need to test out importing them to know the real size of the image.

    Complicated "skin" textures generally are compressed with JPEG compression. Since JPEG is a compressed format the resulting image can be considered already compressed so any compression in the MPQ archive is minimal/non-existant. As such the file you get is the size final size.

    BLP should also support various "real-time" compressions which are common use in modern day graphic processing. However I am unsure if these were only added with legacy World of Warcraft (I think they moved formats from blp since then) or if Warcraft III had them already. These generally do not compress as well as JPEG and palleted can but they are faster to load and generally higher quality (as well as more efficient for GPU memory as they can remain compressed).

    Do keep in mind that all of them are lossy compression. Palleted will cause colour banding similar to topography chart. JPEG will cause JPEG compression artefacts which are usually 8*8 pixels but can be larger (up to 32*32 I think) depending on the exact compression block size used. The real-time texture compression results in a consistent loss in colour quality as it usually combines multiple pixels into a single value.