質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Google マップ

Google Mapは、Google社がオンラインで提供している地図・ローカル検索サービスです。GIS(Geographic Information System:地理情報システム)の中の「WebGIS」に該当します。地図・航空写真・地形の表示方式があり、それぞれユーザーが縮尺を調整して表示させることができます。地域の情報サービスを検索する機能やルート検索の機能も搭載されています。

Q&A

0回答

794閲覧

Unity上にGoogleMapを表示したい

e.okuno

総合スコア0

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Google マップ

Google Mapは、Google社がオンラインで提供している地図・ローカル検索サービスです。GIS(Geographic Information System:地理情報システム)の中の「WebGIS」に該当します。地図・航空写真・地形の表示方式があり、それぞれユーザーが縮尺を調整して表示させることができます。地域の情報サービスを検索する機能やルート検索の機能も搭載されています。

0グッド

0クリップ

投稿2020/04/28 09:28

編集2020/04/28 09:56

前提・実現したいこと

以下サイトを参考に、Google Static Maps APIを利用して地図画像を取得し、取得した画像をUnity上のオブジェクトに貼り付けようとしたところ以下のエラーメッセージが出てしまいました。
参考リンク

発生している問題・エラーメッセージ

InvalidOperationException: Texture has not yet finished downloading UnityEngine.Networking.DownloadHandlerTexture.InternalGetTexture () (at /Users/builduser/buildslave/unity/build/Modules/UnityWebRequestTexture/Public/DownloadHandlerTexture.bindings.cs:58) UnityEngine.Networking.DownloadHandlerTexture.get_texture () (at /Users/builduser/buildslave/unity/build/Modules/UnityWebRequestTexture/Public/DownloadHandlerTexture.bindings.cs:42) GetFoodstoreInfo+<Download>d__29.MoveNext () (at Assets/Scripts/GetFoodstoreInfo.cs:239) UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at /Users/builduser/buildslave/unity/build/Runtime/Export/Scripting/Coroutines.cs:17)

該当のソースコード

C#

1//google map api 2 private float lat = 35.6259034f; //緯度 3 private float lng = 139.7268499f; //経度 4 string MAPKEY = "自分のAPIキー"; 5 public int zoom = 15; 6 string MAPBASEURL = "https://maps.googleapis.com/maps/api/staticmap?"; 7 8public void MapBuild() { 9 // 中心座標 10 MAPBASEURL += "center=" + lat + "," + lng; 11 // ズームレベル 12 MAPBASEURL += "&zoom=" + zoom; 13 // 地図画像のサイズ 14 MAPBASEURL += "&size=1100x900"; 15 if (MAPKEY != null && MAPKEY.Length != 0) 16 { 17 MAPBASEURL += "&key=" + MAPKEY; 18 } 19 MAPBASEURL = Uri.EscapeUriString(MAPBASEURL); 20 StartCoroutine(Download(this.MAPBASEURL)); 21 } 22 23 // GoogleMapsAPIから地図画像をダウンロードする 24 IEnumerator Download(string url) 25 { 26 //var www = new WWW(url); 27 //yield return www; // Wait for download to complete 28 //callback(www.texture); 29 30 UnityWebRequest webRequestGoogleMap = UnityWebRequestTexture.GetTexture(url); 31 yield return webRequestGoogleMap.SendWebRequest(); 32 33 Texture2D myTexture = ((DownloadHandlerTexture)webRequestGoogleMap.downloadHandler).texture; 34 addSplatPrototype(myTexture); 35 } 36 37 /// imageにテクスチャを貼り付ける 38 public void addSplatPrototype(Texture2D tex) 39 { 40 GetComponent<Image>().sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero); 41 }

試したこと

apiを叩く際、wwwのバージョンが古いためできないのだと思い、unitywebrequestに変更してみましたが関係ありませんでした。
textureを生成するところでつまづいてるのはなんとなくわかるのですが、具体的にどこかわからないです。

<変更>
全く同じような質問がありましたので、そちらを一度試してみます⬇︎
https://teratail.com/questions/192226

補足情報(FW/ツールのバージョンなど)

趣味でUnityをやり始めた初心者です。お手柔らかにお願いします。
解決するのに、参考になるサイトなどありましたら教えていただけると幸いです。
また、teratail初心者のため、書き方をこういう風に変更したほうがわかりやすいなどありましたら、アドバイスしていただけると助かります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問