lossless image compression (desktop) tool?

Discussion of tools and resources for game developers

Post » Fri Feb 27, 2015 11:25 am

Hi,

does anyone know a good lossless image compression tool for desktop? all i can find are command line programs or online services.
currently im using online services for that matter (used pictureslash but it seems down for some weeks, now i tryed kraken.io) but for the sake of the workflow i would love to a desktop tool for that matter.

for anyone who doesnt know, with lossless image compression you can reduce the download size of your game dramatically and for XDK apk creation the effect seems to double, here are two apk's one with game image files compressed by construct and splash screen images compressed with irfanview and the other apk has kraken.io optimized splashscreen images (game files stayed the same because there where only ~150kb to gain and im lazy ^^), while the reduce of size in the actual files was "only" ~1.5mb, the apk shrunk by over 3MB.
Image
B
38
S
11
G
5
Posts: 485
Reputation: 5,340

Post » Fri Feb 27, 2015 1:01 pm

Construct 2 has very good lossless image compression built in - see Construct 2's export-time optimisations. If you can get significant gains using some other tool, it's probably lossy (degrading the image quality).
Scirra Founder
B
387
S
230
G
87
Posts: 24,249
Reputation: 192,240

Post » Fri Feb 27, 2015 2:16 pm

oh yes, construct2 has very good lossless image compression but in the past i could always squeez some extra kilobytes with pictureslash.com.
For example kraken.io could save 1.04kb of total 54kb of asset files with optimizing 5 out of 12 pictures, the remaining 7 it says cant be more optimized. Its not always that little, sometimes pictureslash saved me quite some kb.

The saving in the apk came from optimizing the XDK splashscreens (which arent ran through construct2 export) and for screenshots and such purposes i would like to have an desktop software.
B
38
S
11
G
5
Posts: 485
Reputation: 5,340

Post » Sat Feb 28, 2015 9:42 pm

pngoo is good. but i use it in another matter.

1. prepare images for animation
2. use pngoo on those images (pngs)
3. import animations from optimized pictures (They do not lose quality, only metadata and color data (you can't really see difference)
4. export brutally with construct 2 - should be best savings

IF you are still not happy, open folder images when exported - use PNGoo on those images too (These usually lose quality after exporting substantially (i got aliased images usually) ) - still if high enough resolution, that might not happen, it's up to you really.
Sea Monsters template - Isometric
Also includes 40 pages PDF of optimizations and "how-to" for your games, and how the "sea monsters" template was built. Follow link for details :)

sea-monsters-templates-and-assets_t162705
B
41
S
14
G
12
Posts: 623
Reputation: 9,359

Post » Sat Feb 28, 2015 11:24 pm

Thank you! will try out pngoo!
B
38
S
11
G
5
Posts: 485
Reputation: 5,340

Post » Sun Mar 08, 2015 6:34 am

Color Quantizer - the best bloody well kept secret on the web for PNG optimization. I am not kidding here: if you care about download size, optimizing those PNGs individually after exporting from Construct will save you at least 30%~50% (depending on the content).

Here are some examples from our game. (The originals on the left were exported with brute settings in Construct)

Image

This is an non-lossy exported png file, thus making it viable to compare both versions.

One of the reasons Color Quantizer is brilliant in optimizing png files is that you have full control over the number of colours, and that a quality mask brush tool offers you the option to perfectly optimize smaller areas which may be reduced in quality due to automatic conversion. CQ gives you absolute manual quality control over the smallest details in the final version.

For example, the chimney for the small building asset had some pronounced issues with the initial automatic conversion - I then used the quality mask brush to paint over the affected area, and clicked OK once more to recalculate the optimized version. Problem solved: far less colours, but still (visually) the exact same quality.

The windshaft in the center of the sails had anti-aliasing issues, which I again solved with the quality mask brush tool.

It is beyond me why so few people are aware of CQ. I mean, look at those numbers for these four assets:

246.2kb --> 33.6 kb!!! Seven times smaller!

Granted, not every asset may benefit as much as these examples, but in overall CQ results in savings at 50% or more. And no difference in visual quality.

Color Quantizer is THE definite PNG optimizer. Nothing else comes close. I cannot live without anymore. And it's free!

Get it here: http://x128.ho.ua/color-quantizer.html
Win7 64- i7 [email protected], p6t Deluxe v1, 48gb, ATI 7970 3gb, EVGA 590 3GB, Revodrive X2 240gb, e-mu 1820. Screens: 2 x Samsung s27a850ds 2560x1440, HP 1920x1200 in portrait mode
B
30
S
10
G
8
Posts: 170
Reputation: 7,074

Post » Sun Mar 08, 2015 10:28 am

Thank you, sounds very good!
B
38
S
11
G
5
Posts: 485
Reputation: 5,340

Post » Sun Mar 08, 2015 12:23 pm

@Rayek - I'm pretty sure color quantizer is lossy. As you say yourself it uses far less colors, but in a clever manner that makes it difficult to perceive that there are fewer colors - but the fact is it modifies the content of the image, therefore it is not lossless. I would imagine with some types of images such as those with gentle gradients would show banding effects so there's still a risk of nasty surprises if you just apply this to an entire project.
Scirra Founder
B
387
S
230
G
87
Posts: 24,249
Reputation: 192,240

Post » Sun Mar 08, 2015 8:12 pm

Ashley wrote:@Rayek - I'm pretty sure color quantizer is lossy. As you say yourself it uses far less colors, but in a clever manner that makes it difficult to perceive that there are fewer colors - but the fact is it modifies the content of the image, therefore it is not lossless. I would imagine with some types of images such as those with gentle gradients would show banding effects so there's still a risk of nasty surprises if you just apply this to an entire project.


Of course this is a lossy method - it reduces the number of colours (although CQ also does non-lossy optimization). Having said that, during the process of designing and creating graphics many extremely similar colours are introduced - and CQ allows for easy colour reduction and simultaneously maintain full control over the quality of that reduction, so that visually there is no difference to our eyes between the optimized and the original asset.

And yes, obviously one must be careful of going too far. With more colourful assets attention must be paid to the overall quality - CQ will display the original when clicking on the preview, and by zooming in twice or thrice I ascertain that even the zoomed in version looks visually identical to the original (bar a pixel here and there).

Thus generating a version that is visually identical to the human eye (even when compared side by side at 2x zoom) and at the same time much smaller in file size.

Since this is NOT an automated process (manual) the quality of each asset is assured, while my game download becomes much smaller.
Win7 64- i7 [email protected], p6t Deluxe v1, 48gb, ATI 7970 3gb, EVGA 590 3GB, Revodrive X2 240gb, e-mu 1820. Screens: 2 x Samsung s27a850ds 2560x1440, HP 1920x1200 in portrait mode
B
30
S
10
G
8
Posts: 170
Reputation: 7,074

Post » Sun Mar 08, 2015 8:31 pm

Here's another program for generating optimized 8-bit png's:

http://pngquant.org/

Get the windows GUI PNGoo.

This uses a different algorithm than C2 to decimate colors. In some cases, it can generate better quality, with roughly the same image size as C2's 8-bit mode.

Either way you go, in many cases the difference between 24bit and 8 bit are indistinguishable.
Don't lose your work. Backup your game with Dropbox.
B
44
S
10
G
10
Posts: 1,106
Reputation: 9,187


Return to Tools and Resources

Who is online

Users browsing this forum: No registered users and 2 guests