在移动设备上显示Unity中的Google地图

时间:2013-05-26 18:50:15

标签: android ios unity3d

有没有办法在Unity 3D中显示谷歌地图(甚至其他地图应该没问题),但在移动设备上(Android和iOS)?

即使付费插件也可以。

3 个答案:

答案 0 :(得分:5)

您可以使用Unity的WWW.texture和Google的static maps API将其地图渲染为GameObject上的纹理。在我的例子中,我使用了一架飞机,没什么特别的。我在我的示例中使用的图片网址是直接从Google API页面获取的。请注意,您需要使用自己的API key,我将该值留空。如果您在没有API密钥的情况下运行我的示例,则会收到403错误。

using UnityEngine;
using System.Collections;

public class GoogleMaps : MonoBehaviour {

string exampleUrl = "http://maps.googleapis.com/maps/api/staticmap?center=Brooklyn+Bridge,"+
                    "New+York,NY&zoom=13&size=600x300&maptype=roadmap&markers=color:blue%7Clabel:S%7C40.702147,-74.015794"+
                    "&markers=color:green%7Clabel:G%7C40.711614,-74.012318"+
                    "&markers=color:red%7Ccolor:red%7Clabel:C%7C40.718217,-73.998284"+
                    "&sensor=false";
string key = "&key=YOUR_API_KEY"; //put your own API key here.

 IEnumerator Start() {
    WWW www = new WWW(exampleUrl+key);
    yield return www;
    renderer.material.mainTexture = www.texture;
}
}

答案 1 :(得分:1)

前段时间,我开始为{3}}处理unity3d:ActionStreetMap。当前版本(0.7)支持以下功能:

  • 使用OpenStreetMap(OSM)数据通过地形平铺方法即时渲染不同模型(例如建筑物,道路,公园,河流,POI等)。
  • 离线和在线模式。
  • 具有数据高程模型(SRTM)文件的非平坦地形。
  • map based framework轻松自定义 - 类似文件。
  • 城市环境的修改(地形陨石坑,腐败的建筑物等)。
  • 适用于大面积的快速2D概览模式。
  • 定位移动(VR?)设备。

您可以找到网络演示版mapcss

答案 2 :(得分:0)

我的插件Google Maps View正是这样做的:https://assetstore.unity.com/packages/tools/integration/google-maps-view-82542

可在Android和iOS上使用。这是本机视图,因此性能出色。唯一的限制是您不能在其顶部显示Unity场景对象。