在 Unity 中搜尋地理空間創作者中的搜尋點

地理空間建立者會使用經緯度座標預覽逼真的 3D 圖塊。您可以使用文字搜尋功能搜尋實際位置,並透過 Google Places API 在預覽畫面中使用該位置。

本文假設您已熟悉 Unity 的地理空間建立者。如果您是第一次使用地理空間創作者,請先參閱我們的入門指南再繼續。

設定 Places API 金鑰

地理空間建立者搜尋採用 Google Places API 技術。這項服務可將地點名稱 (例如東京、舊金山) 或地址 (例如 10 Downing Street, SW1A 2AA) 轉換為地理經緯度座標。這些座標可用來放置物件,或將 AR 場景的原點移至特定位置。

您必須設定 API 金鑰才能使用 Places API。API 金鑰必須與用於 Maps Tiles API 的金鑰相同。您可以在「檢查器」面板中查看這個鍵,瞭解地理空間創作者來源。

如要設定用於搜尋的 API 金鑰,請按照下列步驟操作:

  1. 如要啟用 Places API,請參閱 Google Cloud 控制台中的 Places API 頁面
  2. 如要設定現有的 API 金鑰來使用 Places API,請前往 Google Cloud 控制台的「憑證」頁面

如果您沒有看到現有的 Map Tiles API 金鑰,請確認您查看的是正確的 Google Cloud 專案。

設定 API 金鑰後,您可以使用搜尋功能變更地理空間建立者來源。在場景階層中醒目顯示地理空間建立者來源,然後按一下「檢查器」面板中的「搜尋位置」按鈕:

alt_text

如果場景中目前沒有來源,您可以透過「GameObjects」>「XR」選單新增來源。

「搜尋」對話方塊開啟後,在「搜尋地點」方塊中輸入搜尋字詞,然後按下 Enter 鍵。「地點」下拉式選單會填入相關結果。舉例來說,如果您輸入「Google Mountain View」,清單就會列出加州山景城 Google 總部的地址:

alt_text

選取最相關的結果。場景檢視畫面相機會移至所選位置上方。按一下「Apply to Objects」,將此搜尋結果的經緯度指派給來源。

提醒您,「來源」是參考點,會決定地理空間建立者錨點在 Unity 世界座標中的位置。當您移動起點時,與該起點相關聯的所有錨點的經緯度會更新,以維持其與 Unity 世界座標中來源的相對位置。如果您想在來源附近排列特定的錨點,這個方法就非常實用。

此外,您也可以使用搜尋功能來變更地理空間錨點的位置 (與來源無關)。與使用「搜尋來源」功能類似,請在場景階層中選取錨點,然後按一下「搜尋位置」按鈕。這個對話方塊與來源搜尋幾乎相同。在「搜尋地點」方塊中輸入搜尋字詞,然後按下 Enter 鍵。現在,您可以使用「地點」下拉式清單中的結果,重新指派錨定經緯度。請注意,您可能需要手動調整錨定標記的高度。

您也可以在場景階層中複選多個錨點,然後使用搜尋功能同時將多個錨點指派給搜尋結果。搜尋對話方塊中的「Selected Objects」清單會列出要移動的所有錨點名稱。

已知缺點 / 問題

  • 目前不支援個別的 Places API 和 Map Tiles API 金鑰,每個金鑰都必須使用同一個金鑰。
  • 地理空間建立者來源必須具有 Cesium 地理參照元件,才能讓 Google 搜尋正常運作。