Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

MapNav - Geolocation Toolkit [RELEASED]

Discussion in 'Assets and Asset Store' started by 8volution, Jan 18, 2014.

?

Which of these two possible usages of MapNav you find more useful/interesting?

Poll closed Feb 26, 2014.
  1. Develop GPS, map-based game/app where a map is visible to end-user in order to overlay Unity content

    6 vote(s)
    50.0%
  2. Create Parallel World game/app with custom scenery/content that can be navigated via GPS (no map)

    6 vote(s)
    50.0%
  1. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    MapNav - Geolocation Toolkit has been released and it is now available on the Asset Store
    https://www.assetstore.unity3d.com/#/content/13153

    MapNav is a Geolocation Engine for Unity and a powerful tool to develop parallel worlds or map-based mobile apps and games, thanks to its 2d/3d object geolocation tools and GPS navigation system.



    Version 1.2 now implements MapQuest Open Services (OpenStreetMaps) by default, and it is also compatible with Google Maps and other maps providers.

    $overlay.jpg

    For more information please visit the MapNav website.

    Thanks everyone!
     
  2. kenshin

    kenshin

    Joined:
    Apr 21, 2010
    Posts:
    940
    Nice tool, thanks!
     
  3. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Thanks Kenshin.

    For a sample demo please try SonicMaps, a Locative Audio (GPS Tour) app for sound geolocation, powered by MapNav. If you own a compatible iOS device you can use one of the following promo codes for a free copy of the SonicMaps Editor:

    EKXJ3FW3K3HK
    7MPFFR3YX74F
    69LMHX6W47HL
    NE3JWMEMXELR
    J4PR3ETPJRM3
    FJH6WLNR7EHP
    RJWJ94NAEPJE
    9YJHKWWXJTHT
    4FTMAHEEY4K9
    96F7L6FN3XWP
     
    Last edited: Jan 25, 2014
  4. Mars91

    Mars91

    Joined:
    Mar 6, 2012
    Posts:
    572
    PM sent
     
  5. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Hello everyone,

    As you might have noticed, the MapNav Geolocation Toolkit can be used in many different situations, but these can be essentially grouped in two main branches:

    1. Development of GPS and map-based games/applications where a map is visible to end-users as a base layer to overlay your own Unity content.

    2. Development of "Parallel Worlds" or games/applications with custom scenery/content that can be navigated via GPS (map layer is displayed only during development to facilitate content geolocation and it is finally hidden to end-user).

    We'd love to know your opinion so we have just created a poll to ask which of these two options you find more useful/interesting?

    This information will help us identify your preferences and improve the MapNav asset with the most required features.

    Thanks very much for your feedback!
     
  6. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Version 1.2.1 is now available on the Asset Store.
    http://u3d.as/5Xs

    With this version you will be able to geolocate multiple game objects at once (without having to stop the game) as each instance of the GetGeolocation script now stores its own location data. It also features an improved and smoother response to compass sensor readings plus other minor bug fixes.
     
    Last edited: Jan 27, 2014
  7. Jean-Fabre

    Jean-Fabre

    Joined:
    Sep 6, 2007
    Posts:
    429
    Hi,

    Is it not working on Windows phone and BlackBerry? That would be great if is does.

    Thanks,

    Jean
     
  8. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Last edited: Feb 4, 2014
  9. pnevin

    pnevin

    Joined:
    Jun 25, 2013
    Posts:
    2
    I have been trying it out on the iphone 4. It was very easy to get running, even for me. Great work.

    Taking the heading or bearing from the compass is causing problems though. I would like to see the option to take the heading from just the GPS co-ordinates like here http://www.movable-type.co.uk/scripts/latlong.html .

    Is there an option to switch off online maps, as I don't need them? Maybe there is and just didn't notice it.
     
  10. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Hi pnevin, thanks very much for your feedback.

    Have you tried calibrating your compass sensor (magnetometer)? Sometimes it is affected by large metallic objects, etc. This is an example of calibration method: http://www.youtube.com/watch?v=sP3d00Hr14o
    However, you should usually expect a 10-20 degrees margin of error on this type of sensors for mobile devices. I checked your link but it looks like they are just calculating heading as the result of the path between two geographical locations, which might not be really useful when trying to update your current heading from actual live GPS readings. Even if this calculation was performed between two consecutive GPS reading (let's say, every second or so), the heading accuracy would be conditioned by the accuracy of the GPS sensor making it very unreliable. Also, if you change your orientation while you are static, it would be impossible to register any heading change. We really hope new devices will integrate better sensors as there is a huge market out there for AR and location based applications.

    Regarding the map question, we have already included a "disable map" option in the next update release, which should be available in few days.

    Thank you.


     
  11. pnevin

    pnevin

    Joined:
    Jun 25, 2013
    Posts:
    2
    This is a hardware problem you are right. And calibration solves it. But it is difficult to do this when the device is in a cradle and you are driving :).

    I see I haven't updated to your most recent version which actually has a fix for "smoother response to compass sensor readings plus other minor bug fixes". I may have spoken too soon.
     
  12. tbjod

    tbjod

    Joined:
    Feb 25, 2008
    Posts:
    19
    Nice tool!, does it support offline maps? (downloading tile data and caching it)
     
  13. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Thanks tbjod!

    Unfortunately, caching, or storage of maps violates the TOS of most providers like google,etc. so we do not implement offline maps in our asset. Although you could use online maps during development (content geolocation) and include offline open-source imagery for a small specific area if you know where your game/app is located (so your users won't need an internet connection).

     
  14. kendr1n

    kendr1n

    Joined:
    May 2, 2013
    Posts:
    1
    hey,

    is it possible to get more accuracy indoors by using a strong wifi, or is MapNav referring to gps only?

    thanks!
     
  15. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Yes, you can get location data indoors using Wifi only, however the best accuracy is provided by the GPS sensor, which in most cases will only work outdoors. Here is some useful information on how location data is obtained in mobile devices:

    1. GPS chipset

    Most accurate
    Slow
    Need to be outside or near window
    Requires the GPS chipset to be on

    2. MACs visible on WiFi (by querying a central DB such as Google's)

    Often surprisingly accurate (10-100m depending on how many WiFis are present and if they are have been seen before)
    Quite fast
    Requires the wifi to be on
    Requires a data connection to the Internet to be on (not necessarily on WiFi)
    Requires Google services to be installed on the device (some cheap devices may not have this)

    3. The location of the cell-phone mast you are using (Network Provider)

    Accurate to hundreds of meters to kilometers
    Often immediate
    Requires telephony to be on

     
  16. sabba2u

    sabba2u

    Joined:
    Feb 3, 2012
    Posts:
    42
    is it possible to create routes or get streets? I see we can geolocate objects on the 3d demo... can one set destination points that are bound to an actual road?
     
  17. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Hi Sabbba2u,

    Turn by turn navigation is not yet supported but you can easily draw routes, POI, etc. using MapQuest Static Maps parameters like this:

    http://devblog.mapquest.com/2011/05/11/get-creative-with-the-open-static-maps-api/

    This is an example of route:



    Then, MapNav will do the GPS to Unity World Space conversion for you so you can navigate the map and explore your integrated Unity content (2D/3D Meshes, Physics, Animations, sounds, etc.).




     
    Last edited: Feb 19, 2014
  18. MarcoMeter

    MarcoMeter

    Joined:
    Jun 14, 2013
    Posts:
    69
    Does mapnav support vector maps?

    Do you recommend mapquest for offline routing?
     
  19. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Raster tiles only at the moment. I had a look to Mapnik Vector Tiles with Geojson data and looks promising but not sure if it is ready for commercial use yet.

    The MapQuest free open services are great and they have routing services, but if you need satellite imagery then you should go for their Licensed content or Google.

     
    Last edited: Feb 13, 2014
  20. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    I am happy to announce that MapNav 1.3.1 is finally available on the Asset Store, including: touch interactions (Zoom to Pinch Drag to Pan), a brand new 2D-view engine (with orthographic camera), disable map option, free camera mode (3D-view), Bing maps support (in addition to Google Maps and MapQuest-OSM) and many other minor fixes and improvements.

    $mobile.png

    Thanks everyone for your valuable feedback and support!
     
    Last edited: Feb 20, 2014
  21. throwawayfacebookemail

    throwawayfacebookemail

    Joined:
    Mar 25, 2014
    Posts:
    1
    This looks very good! Is there a way to change the style of the map? Is this easily accessible in Unity Inspector?
     
  22. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Thanks for your comment!

    Yes, when using Google Maps, you can implement styled maps as described here.
    Some of the options are not yet available from the inspector, as they are specific to the Google service (MapNav is also compatible with other maps providers) but they are very easy to use by modifying the url call in the mapnav.js script.

    If you have any doubt or issue, please let me know and I will be happy to help :)
     
  23. j3st3r

    j3st3r

    Joined:
    May 12, 2014
    Posts:
    5
    I can't make it work. I just see a pink texture in the map all the time. The call to the Map Quest Open Api and the Api key are working but the texture is never applied to the map.
     
  24. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Hi j3st3r,

    It sounds like a missing material. Have you checked if the map's renderer is using the maptile material?

    $maptile.jpg

    Could you send me a screenshot showing your issue to support@recursivearts.com?

    Thanks.
     
  25. j3st3r

    j3st3r

    Joined:
    May 12, 2014
    Posts:
    5
    Hi 8volution,

    the map's renderer is using the maptile however when I start the 3D Demo Scene the result is the same, the texture is never loaded in the map.

    Pleas find attached the screenshot in your mail.

    Thanks
     
  26. j3st3r

    j3st3r

    Joined:
    May 12, 2014
    Posts:
    5
    The problem was in the material. There wasn't shader assigned to it. Issue solved. Awesome package and fast and great support. Great work!!!!

    Thanks
     
  27. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Thanks j3st3r. I was just about to send you an email asking about the shader ;). Good to know everything is working fine now.

    Enjoy!




     
  28. Dosetsu

    Dosetsu

    Joined:
    Dec 22, 2011
    Posts:
    39
    Question :

    Can you get feed back from the map - like if user pans around and taps a location on the map, can you get the lat/long coordinates of where they tapped?

    Thanks!
     
  29. thegdeveloper

    thegdeveloper

    Joined:
    Feb 25, 2013
    Posts:
    134
    Does this asset works with free version of unity on mobile platforms?
     
  30. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Yes, it works on Unity free and pro, including mobile Add-ons.
    For example, SonicMaps is a commercial iOS/Android app developed with MapNav and Unity free (no need for iOS/Android Pro add-ons).
     
  31. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Hi Dosetsu,
    Yes, the GetGeolocation script included with MapNav returns lat/long coordinates from a Unity World location input. You'll just need to use that method when tapping the map.
    Panning and zooming touch gestures are already implemented in MapNav so you will only have to write your tapping code.
     
  32. taylorjames9

    taylorjames9

    Joined:
    Nov 21, 2012
    Posts:
    4
    I'm interested in using this tool but I would like the ability to stylize the map to look more like these maps http://snazzymaps.com/.

    Can I Use mapNav to stylize the map as I would be able to using Google maps api? Please let me know.

    Nevermind. I found the answer to this above. Thank you.
     
    Last edited: May 21, 2014
  33. Dosetsu

    Dosetsu

    Joined:
    Dec 22, 2011
    Posts:
    39
    Could you please provide a c# implementation?

    Thanks!
     
  34. StoneRock

    StoneRock

    Joined:
    Apr 25, 2014
    Posts:
    1
    Hello,
    Could map on MapNav work on every county ?
    for example,... In Taiwan?

    Thanks !
     
  35. philworthy

    philworthy

    Joined:
    Jan 30, 2013
    Posts:
    3
    Hi.. Is it possible (and do you have any example scenes) to create a Google Earth type experience with MapNav? (ie a sphere that can be spun around and zoomed in/out of - obviously including the tile-loading of the map)...?
     
  36. Bahamut Games

    Bahamut Games

    Joined:
    Jul 16, 2014
    Posts:
    4
    Hello, could you give me an example of how to use mapnav with the mapquest or google maps API to change the colors of the map? It can be done with the API but how can i call the javascript API within the plugin??? Thanks!
     
  37. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    I am happy to announce that a C# implementation of MapNav (v.1.3.2) has now been submitted for approval and should be available in the next days. The Unityscript (Javascript) version has also been included as a zip file in order to avoid conflicts. Those updating from a previous version please make backup your projects before downloading the new release.

    Thank you.
     
  38. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Yes, MapNav works in every location, included Taiwan. Note however that some maps providers have limited satellite images coverage for some areas. Details on how to implement a different provider can be found here.
     
  39. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Unfortunately this feature is not yet available as MapNav is currently based on a 2D Mercator Projection of the globe.
     
  40. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    The map can be customised for example using Google Styled Maps. Just add the corresponding parameters to the url call in the MapNav.cs/MapNav.js script.
    I hope it helps.
     
  41. Bahamut Games

    Bahamut Games

    Joined:
    Jul 16, 2014
    Posts:
    4
    Thanks for the reply 8volution, that helped a lot! But why the size for google maps is only 640x640??
    And is there a way to show the Google Maps button GUI instead of the plugin map buttons?
    Why do you use Google Maps API V2? Isn't there a way to support Google Dynamic Maps instead of static maps?

    Thanks again!
     
    Last edited: Jul 26, 2014
  42. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Google API sizes.png
    This is a Google Maps limitation. However, with Google Maps for business you should be able to increase the size up to 2048x2048. Google Dynamic Maps are currently not supported, but with the new Unity 5 GUI coming soon, it might be well worth building your own interface :)
     
  43. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    MapNav 1.3.2 is now available.
    Including full C# source code and improved conversion between GPS coordinates.
     
  44. Dosetsu

    Dosetsu

    Joined:
    Dec 22, 2011
    Posts:
    39
    Just downloaded latest source from asset store (version 1.3.2) and it is still all javascript with no c# in sight. Please update!
     
  45. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Hello Dosetsu,

    The c# version of the scripts are located within the /MAPNAV/Scripts folder of the asset. The JavaScript version is only available as a compressed zip file within the same folder.
    I am attaching a screenshot of the package content as shown in the Asset Store:


    I hope it helps.
    Please let me know if you are still experiencing any issues and I will contact the Asset Store Team to check if everything is fine with their version control system.
    Thank you.
     
  46. Linetsis

    Linetsis

    Joined:
    Oct 25, 2013
    Posts:
    4
    Hi 8volution,

    Your project seems very interesting, I was wondering if you had a Demo like an apk build or a free Lite release.

    Despite of that, how much is the minimun update distance using only GPS (no Internet Connection)?? In addition, what is the maximum update speed this same way?

    Thank you in advance, and Nice work.
     
  47. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Hi Linetsis,

    Thanks very much for your comments.

    MapNav is set to achieve the best possible accuracy from your GPS sensor, which can be as good as 3 meters with a strong satellite signal. The minimum update distance for the Input.location property is also set to 3 meters.
    Moreover, the MapNav.cs script includes an "update rate" parameter that can be accessed from the custom inspector. This property controls how often the current GPS data is retrieved in order to update the user position on the map/scene. By default it is set to 0.1s, which is fast enough for most situations but can be set as needed. Finally, the user's transform position is always interpolated between two consecutive values to achieve a smooth and natural movement effect.

    For a working demo please have a look to the SonicMaps app, which is based on an early version of MapNav (2D only). If you are using an iOS device, please let me know and I will be happy to send you a free promo code.
     
  48. paulStapelberg

    paulStapelberg

    Joined:
    Jun 13, 2010
    Posts:
    30
    Hi 8volution,

    MapNav is a great plugin! I am having a great time integrating it into an application.

    A quick question though, does it cache the maps for offline use? This would be particularly useful for my case at the moment and I was just wondering if it has this functionality.

    Thanks
     
  49. 8volution

    8volution

    Joined:
    Nov 14, 2012
    Posts:
    88
    Thank you paulStapelberg!
    I'm glad to hear you are finding it useful.

    Could you please send me a PM describing your case? There are multiples approaches to offline maps but it depends on your application.
    Thanks.
     
  50. paulStapelberg

    paulStapelberg

    Joined:
    Jun 13, 2010
    Posts:
    30
    Thanks you for your quick response. I have sent you a pm which hopefully explains my situation.
     
    8volution likes this.