You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As of writing, the whole map is rendered at the same resolution levels. However:
Given that the area chosen is square, lots of space is not interesting, esp. those not containing any player structure.
Highly detailed area are costly to render and store, even if there is nothing interesting.
It would be interesting to explore having a more dynamic rendering - with limited resolution where there is nothing of interest and better resolution on player structure for example.
It might not be completely straightforward:
Detecting whether there is something of interest or not is doable, maybe even with some configurability. It might be expensive to query many parts of the map, but I suspect that Factorio is quite efficient here.
We would need to store which zone is rendered at which level of details. In JSON, it might end up being some amount of data, though we can probably manage something decent there.
That would probably require to convince Leaflet to use a mix of tiles for rendering (based on that information). Leaflet is relatively simple, that might make be tricky.
Regarding Leaflet, there is at least some prior art: https://github.com/ghybs/Leaflet.TileLayer.Fallback. It relies on trying a different resolutions when a tile is not available. It does introduce some extra round trips, but has the advantage of simplicity as it would not require recording what exists and what does not exists, making the whole thing reasonably simple.
Soul-Burn
added a commit
to Soul-Burn/mapshot
that referenced
this issue
Nov 17, 2023
Added min jpg quality when tile has no relevant entities.
When value 0 is used, the tile is skipped. Leaflet.fallback is used on frontend code to support this.
As of writing, the whole map is rendered at the same resolution levels. However:
It would be interesting to explore having a more dynamic rendering - with limited resolution where there is nothing of interest and better resolution on player structure for example.
It might not be completely straightforward:
[Original suggestion from Soul-Burn on the mod page]
The text was updated successfully, but these errors were encountered: