Texture Management in Defold

Loading speed test WebP vs Default compression


vs

Collections are loading using “async_load”
10 fully filled atlases 2048x2048.


Assets for test project from https://kenney.nl

Project (you can check by youself):
WebpSpeedTest.zip (1.3 MB)

My results
Xiaomi Redmi note 4:

First load (A first (and second, sometimes) load all the time faster than next loads.):
Default : 0.55 s
WebP: 1.62 s

20 loads, average value:
Default : 0.95 s
WebP: 2.73 s

iPad4:
First load (on iPad difference between first and next loads smaller):
Default : 1.3 s
WebP: 3.2 s

20 loads, average value:
Default : 1.3 s
WebP: 3.38 s

Conclusion:
My test shows that webp loading ~2.5 - 3 times slower that textures without compression.
But need to undertand that it depend of your atlases and other variables. It’s only synthetic test.

And about build size…
Build with same 10 atlases:
WebP:
ios: 11.2 Mb
android: 9.7Mb
game.arcd file size (resource file with textures): 7.2 Mb

Default:
ios: 14.1 Mb
android: 12.7 Mb
game.arcd file size (resource file with textures): 10.2 Mb

In my example it’s a choice between the ~2.5 - 3 times faster or more than 30% bigger (In example case: ~2 seconds or ~3Mb ). Choose your side =)

UPD: All test result was updated. I forgot to turn off mipmaps in simple textures but in webp textures it was turned off.

New data is more realistic. Sorry for that.

17 Likes