1 (edited by cj_catrix 2018-02-18 10:35:09)

Topic: Min zoom level seems to be limited

Hi Alex,

Since updating from  2.5.30.1 to 2.5.32.1 to pickup the fix for this issue http://forum.infinity-code.com/viewtopic.php?id=764, I've only just noticed that I can no longer set the zoom to level 3 - which displays the whole atlas of the world, seems to be stuck on equivalent of previous level 4 - doesn't appear to matter which service is used.

It strikes me as odd as I thought I'd confirmed the fix for the other issue by adding a marker and jumping to the whole world view.

However I downloaded a fresh copy and started with a clean project and the min level zoom issue still remains.  Image of widest available view attached for 2.5.32.1 (at default lat/long 0/0 it is missing Australia and much of north america, china, russia and antartica).

Possibly due to updated unity versions in the meantime so it may be tied to that (think I went from 2017.2 to 2017.3.0f3 - I can't update to the latest unity atm, just 2wks out from deadline).

Comparing against 2.5.30.1 the zoom is consistent with level 4 there and I can see the full atlas at zoom level 3 in the old version.
I also downloaded and see the issue in 2.5.31.1 (where the min zoom level was first noted as fixed).

Would you have any advice or could investigate further please?
Anyone else noticed this?

Many thanks,
Craig

Post's attachments

Attachment icon MaxView2.5.32.1.jpg 121.09 kb, 13 downloads since 2018-02-18 

Re: Min zoom level seems to be limited

Hello.

This is a planned behavior and not a bug.
Online Maps checks the size of the map and, if necessary, limits the minimum zoom to prevent a situation where the map has two points with the same coordinates.

The maximum map size for zoom = 3 is 1792x1792.
At this size, almost the entire world is displayed.

Kind Regards,
Infinity Code Team

Re: Min zoom level seems to be limited

Ahh, I think there's the reason there.  I had forgotten I needed to increased the map texture width/height.

In version 2.5.30.1, I'd previously upped my map texture to 2048x2048 to get the full world map (made sense from a power of 2 scaling as well). 

Now it seems that in 2.5.31.1 and above this has been limited to less than 2048 (2047 seems acceptable but anything non-power of 2 gets a warning in the map control - including 1792).

For note, if you put the longitutde to 152.910358434128 you get close to the visible landmass centre of the world (just happens to be where I live in Brisbane - not that I'm claiming anything there smile

Previously with 2.5.30.1, using this longitude and 2048x2048, I see all of Africa on the left (with a shade of Greenland + Iceland) in the top left - all the way to South America on the right.  It doesn't appear to be including all of Greenland so there is likely still some gap where there should be no risk of repeated longitude.

In both 2.5.30.1 and 2.5.31.1, by limiting the max res to 2047 I get the same response now - with Africa and the UK clipped on the left, and a good portion of South America and Greenland missing on the right.

Is that difference really needed for the overlapping coordinate safety margin? And may I ask why the change between 2.5.30.1 and 2.5.31.1 please?  Was this to fix the issue with the markers not being displayed in that zoom level (I certainly still want those to work)? 

Perhaps there is a place in the code where there is a '< 2048' instead of a '<= 2048'?

2048 results in a much prettier map, and we should also be trying to avoid using non-power of 2 textures for performance (and presumably the warning in the map control suggests other predicates in the code too?).

As always, any comments appreciated.
Best regards, Craig

Re: Min zoom level seems to be limited

The map does not need to be power of 2.
The map must have a size = 256 * N.
So 1792x1792 is a valid value.

Yes, this change is related to the fixing the problem with the markers.
But if this has been related only to the markers, I would have fixed this in a less radical way.
In fact, the problem is much more deeper and complex, and I can not even imagine how many bugs this extra pixel contains. It seems to me something between: a lot of bugs and how it still works at all. Seriously, I'm not kidding.

I understand what you want and I have one idea how to work around this.
I need some time for testing.
I will write to you later about the results.

Kind Regards,
Infinity Code Team

Re: Min zoom level seems to be limited

Thanks Alex, I appreciate your thoughts.

I was thinking along the lines of power of 2 for mipmapping but I gather the multiple of 256 relates to tiles which would be mip-mapped ok, makes sense.

I've found where the zoom does the checkMapSize and disabled it for my purposes (I understand that move is definitely buyer-beware) and I'll see if I can have a go later in the 3D marker where it checks the map boundaries (thinking perhaps I can use some base assumptions in how I use it - like just making all markers visible at min zoom level - while I figure I'm massively oversimplifying that it might be worth a go for my case).

Thanks for looking further into it, I wouldn't be too hard on the efforts - amazing any of our coding efforts work even half the time with the combinatorial explosion of possibilities we manage in our profession (just as well my computer doesn't understand cursing language when I'm tracking my bugs smile

Great job on a great plugin, and thank you for your continuing efforts in support and helping us to understand the elements behind it.

Best regards,
Craig

Re: Min zoom level seems to be limited

I promised to wrote you about results of testing:

In general, it was successful ... almost.
Tileset works completely correctly.
But in "Drawing to texture" mode, I found a few small bugs on the edge of the map with markers and drawing elements.
The problem is that I can not fix it.
These are very complex pieces of code that already cost me a lot of pain, and to be honest, I'm just afraid to break it completely.

Honestly, I do not know what to do with this right now.
On the one hand, this gives you the ability to show the entire map using tileset correctly, and almost correctly in "Drawing to texture" mode.
On the other hand, I really hate "known bugs", and most likely these problems will never be fixed.

Kind Regards,
Infinity Code Team

Re: Min zoom level seems to be limited

Thanks for pursuing it Alex.

Speaking purely selfishly that sounds great to me as I only use the tileset mode - but I can understand the need to have it operate across the feature set.

Any chance of a beta release, perhaps with a flag for turning this change on/off?  Or by limiting the full mapsize to tileset mode?
I can understand if this branch of code is just experimental.

I'm doing the main demonstration of our app in a little over 1 week now and would be keen to show 3d markers on the full world map if at all possible (my fallback might be to put in a scrolling mechanic in VR with people will be standing on the map - but that would be a recipe for queasiness I'd prefer to avoid).

All the best,
Craig

Re: Min zoom level seems to be limited

The new version is already available and it contains these changes.

Kind Regards,
Infinity Code Team

Re: Min zoom level seems to be limited

You sir are a certifiable legend.

New version downloaded and working perfectly - full map and 3d markers on all zoom levels.

Thank you for your time and efforts Alex, shame I can't add a 6th star to the product review.

I also need a bigger smilie to show how big my grin is atm big_smile.