Optimize for bandwidth/storage space

Impressive improvement! Tnx

Actually, there are two sprite sheets. One for the UI and one for the map layer.
UI Sprite Sheet
The UI sprite sheet has proper max-age=604800. But, its size is 3.01 MB. Perhaps this one is too big either?
Plus, note that many mobile GPUs have a GL_MAX_TEXTURE_SIZE == 2048 limit, which can lead to out of bounds texture coordinates and display errors on this 3,264 px wide sprite sheet. Hence, going for a square shape may be a solution here.

Then there is the map layer sprite sheet (mapillary_sprites.json and mapillary_sprites.png)
mapillary_sprites.png
The PNG has been nicely reduced to 1,647,652 bytes. However, these sheet files continue to have max-age=900.

Overall, perhaps you may want to settle for one sheet file, although I am aware that they serve different purposes. Additionally, perhaps making them more square shaped would help to decrease their size?

Sometimes, the sheet files do not download completely on slow connections and there is no way to reā€‘initiate this download again in the UI, e.g. clearing and selecting ā€œAll traffic signsā€ again has no effect. Your only hope then becomes refreshing the page.

2 Likes

Weā€™ve updated the cookie page in the web app to simply use a color background which reduces it total download size of the page by more than half. As the color matches the loading background of the web app the transition should hopefully seem much smoother now. :slight_smile:

Weā€™re also working on sprite sheet improvements. The sprite sheet is used in three places (map, UI dropdowns and the image viewer) so weā€™re thinking about how best to consolidate them.

1 Like

Trying to go via the browser address bar to any image directly (using the pKey URI query) or by clicking on a dot or an image in the feed continues not to work on a slow connection.

Thanks to all persons involved. Wow, how fast it is now.

2 Likes