感謝你關注 Google I/O 大會。 查看講座說明。

Android 快速入門導覽課程

如要開始在 Android 中使用 ARCore,您可以執行 ARCore SDK 內含的 hello_ar_kotlinhello_ar_java 範例應用程式。這些範例應用程式使用 OpenGL,也就是用於轉譯 2D 和 3D 向量圖形的程式設計介面。應用程式會顯示任何偵測到的平面,讓使用者輕觸平面即可放置 3D 模型。

設定開發環境

開啟範例專案

  1. 在 Android Studio 中,複製 ARCore SDK GitHub 存放區。

    做法有很多種:

    • 如何針對已建立的 Android Studio 安裝:

      • Git 選單中選取 Clone
      • Version control 下拉式選單中,選取 Git 做為版本管控系統。
      • URL 欄位中,輸入用於 ARCore GitHub 存放區的 URL:

        https://github.com/google-ar/arcore-android-sdk.git

    • 您也可以開啟 Terminal 並發出 git clone 指令,如下所示:

      git clone https://github.com/google-ar/arcore-android-sdk.git
  2. 按照下列方式開啟其中一個範例專案 (您必須明確開啟專案,才能建立及執行該專案)。

    • File 選單中選取 Open
    • arcore-android-sdk/samples 資料夾中,選取 hello_ar_kotlinhello_ar_java 資料夾,然後按一下 Open

準備裝置或模擬器

您可以在支援的裝置或 Android Emulator 中執行 AR 應用程式。執行模擬器之前,您必須先在模擬器上更新 AR 適用的 Google Play 服務。詳情請參閱在 Android Emulator 中執行 AR 應用程式 一文。

執行範例

確認您的 Android 裝置已連線至開發機器,然後按一下 Android Studio 中的 Run

Android Studio 會將您的專案建構為可進行偵錯的 APK,安裝該 APK,然後在裝置上執行應用程式。詳情請參閱建構並執行應用程式一文。

如果 AR 適用的 Google Play 服務遺失或過時,系統可能會提示您安裝或更新。請選取 CONTINUE 以從 Google Play 商店安裝,或按照更新 AR 適用的 Google Play 服務的說明手動更新。

hello_ar_java 應用程式可讓您在偵測到的 AR 平面表面上放置 3D ARCore 典型。其是使用 Android GL SurfaceView 來實作,用來轉譯相機預覽畫面和基本 AR 物件,例如飛機和錨點。hello_ar_java 的轉譯架構可在 com/google/ar/core/examples/java/common/samplerender 中找到。

使用即時刊登位置

互動智慧搜尋刊登位置 API 可讓使用者將 AR 物件置於螢幕上,無需等待 ARCore 偵測表面幾何圖形。當使用者在環境中進一步移動時,物件位置會即時修正。

輕觸螢幕即可放置物件。看到螢幕上的全項物件顯示後,請務必持續移動裝置,讓 ARCore 可以取得與周遭環境相關的足夠資料,以準確地固定虛擬物件。

一旦 ARCore 偵測到表面幾何圖形,並在可放置物件所在的區域中建立可追蹤物件,系統就會自動更新該物件的姿勢。

即時刊登位置

在圖 1 中,即時刊登位置已停用且未定義表面幾何圖形。 在集區資料表右側 (四個小藍點) 右側的地面物件呈現被淘汰,其姿勢沒有定義。

在圖 2 中,只要從齒輪圖示下方的選單啟用「即時刊登位置」,

在圖 3 中,「即時刊登」功能啟用後,新的物件會插入到場景中。 而是以灰階 (而非彩色) 表示,現在並未針對正確姿勢進行修正。

在圖 4 中,當偵測到表面幾何圖形 (由 trackable 格線線描述) 時,新物件會變色,且其姿勢正確。

使用深度

啟用深度時,ARCore 會將場景中物件的幾何圖形與位置納入考量,並且計算場景中物件相對於場景中其他物件的位置。這個物件可讓場景中的物件遮蔽所配置的物件,並給予應用程式的實際寫實。

即時刊登位置

在圖 1 中,深度已停用。物件在集區資料表下會放置。

在圖 2 中,當裝置在撞球桌周圍移動時,不論物件是否在場景中,物件看起來都會跟隨裝置。

圖 3 已啟用深度。

在圖 4 中,當裝置在情境中移動時,物件表格已被遮蔽。

後續步驟