練習 - 開始使用電腦全像攝影遠端處理

已完成

歡迎加入 HoloLens 2 教學課程。 在本教學課程中,您將瞭解如何建立混合實境體驗,以特色UI元素、3D模型操作、模型裁剪和眼球追蹤功能。 在第二個教學課程中,您將了解如何建立適用於全像攝影遠端處理的電腦應用程式,讓您隨時可以連線到 HoloLens 2,並在 3D 中將應用程式視覺化。

若要順利完成本教學課程,您應該具備 Unity 和混合實境工具組 (MRTK) 的基本知識。 如果您沒有這些知識,建議您先完成使用者入門教學課程,再繼續進行。

建立並準備 Unity 專案

在本節中,您將建立新的 Unity 專案,並準備好進行 MRTK 開發。

移至 HoloLens 2 基本概念 路徑並完成該處的模組,但在到達 HoloLens 2 模組時停止。 完成這些指示之後,您已完成下列作業:

  1. 已建立 Unity 專案,並給予它適當的名稱;例如, 電腦全像攝影遠端處理。
  2. 已切換建置平台。
  3. 已匯入 TextMeshPro 基本資源。
  4. 已匯入混合實境工具組並設定 Unity 專案。
  5. 建立並設定場景,並提供適當的名稱,例如電腦全像攝影遠端處理

匯入教學課程資產

下載並匯入 MRTK.HoloLens2.Unity.Tutorials.Assets.PCHolographicRemoting.3.0.0.unitypackage

提示

如需有關如何匯入 Unity 自訂套件的提醒,您可以參閱匯入混合實境工具組指示

匯入教學課程資產之後,[專案] 視窗看起來應該如下所示:

Screenshot of Project window.

設定和準備場景

在本節中,您將藉由新增一些教學課程預製物件來準備場景。

  1. 首先,由於某些模型格式為 Unity 原生不支援的 glTF 格式,因此我們需要安裝可匯入它們的套件。

    若要安裝 開放原始碼 glTFast 連結庫,請下載並執行此檔案: https://package-installer.glitch.me/v1/installer/OpenUPM/com.atteneder.gltfast?registry=https%3A%2F%2Fpackage.openupm.com&scope=com.atteneder

    Screenshot of importing glTFast.

    選取匯入

    Screenshot of new scope registry imported.

    選取關閉

  2. 在 [專案] 視窗中,瀏覽至 [資產]> [MRTK.Tutorials.PCHolograhicRemoting]>[預製物件] 資料夾。 選取 SceneContent prefab,並將它拖曳到 [階層] 視窗底部

    Screenshot of Adding prefabs 2.

    若要從相機的觀點檢視場景,請以滑鼠右鍵按兩下 [階層] 視窗中的 [主要 相機 物件],然後選取 [對齊檢視] 以選取

    Screenshot of Focus objects on scene.

    提示

    如果您覺得場景中的大型圖示會分散注意力(例如大型框架的 'T' 圖示),您可以將 Gizmos 切換至 Off 位置來隱藏它們

設定按鈕以操作場景

在本節中,您會將指令碼新增至場景中,以建立會示範模型切換和裁剪功能基本概念的按鈕事件。

設定 Pressable Button (指令碼) 元件

  1. 在 [階層] 視窗中,展開 SceneContent 和 ButtonParent 對象,然後選取 [下一步] 按鈕。 在 [偵測器] 視窗中,找出 [可按下的按鈕] 元件,然後選取 OnClick () 事件底下的加號圖示 (+)。

    Screenshot of expanding the Interactable script.

  2. 在 [階層] 視窗中仍保持選取 NextButton 物件,將 ButtonParent 物件從 [階層] 視窗拖曳至您剛才所新增事件的空白 [無 (物件)] 欄位,讓 ButtonParent 物件可以從此接聽按下按鈕的事件:

    Screenshot of Adding ButtonParent to the None Object.

  3. 選取相同事件的 [無函式] 下拉式清單,然後選取 ViewButtonControl>NextModel () 將 NextModel () 函式設定為按下按鈕時所觸發的動作:

    Screenshot of selecting ViewButtonControl and NextModel.

設定其餘按鈕

  • 針對每個其餘的按鈕,請完成上方所述的程序,以將函數指派給 OnClick () 事件:

    • 針對 PreviousButton 物件,指派 ViewButtonControl>PreviousModel () 函數。
    • 針對 ClippingButton,選取 ToggleButton>ToggleClipping () 函式。

設定 view button control (指令碼) 和 toggle button (指令碼) 元件

現在您的按鈕已設定為示範模型切換和裁剪功能。 接下來,您會將 3D 模型新增至場景,並將裁剪物件新增至指令碼。

我們已提供六個不同的 3D 模型來進行示範。 展開 ModelParent 物件以公開這些模型。

  1. 在 [階層] 視窗中保持選取 ButtonParent 物件時,在 [偵測器] 視窗中,尋找 View Button Control (指令碼) 元件並展開 Models 變數。

    在 [ 大小] 欄位中,輸入您想要在場景中擁有的 3D 模型數目;在此案例中為 6。 這會建立欄位來新增 3D 模型。

    Screenshot of entering the number of 3D models.

  2. 將 ModelParent 物件的每個子物件拖曳到這些欄位中。

    Screenshot of dragging and drop each child object.

  3. 從 [階層] 視窗中,將 ClippingObjects 物件拖曳至 Toggle Button (指令碼) 元件的 [裁剪物件] 欄位。

    注意

    僅停留在 ButtonParent 物件中。

    Screenshot of dragging and drop clipping object.

  4. 在 [階層] 視窗中,選取 ClippingObjects 預製專案,並在 [偵測器] 視窗中啟用它,以開啟 Clipping 物件

設定裁剪物件以啟用裁剪功能

在本節中,您會將 MarsCuriosityRover 物件的子物件轉譯器新增至個別的裁剪物件,以示範 MarsCuriosityRover 模型的裁剪。

在 [階層] 視窗中,展開 ClippingObjects 物件,以公開您將在此專案中使用的三個不同裁剪物件。

  1. 若要設定 ClippingSphere 物件,請加以選取,然後在 [偵測器] 視窗中新增 Clipping Sphere 元件。 接下來,在 [大小] 字段中輸入您需要為 3D 模型新增的轉譯器數目。 在此情況下,請為MarsCuriosityRover子物件新增 10 個。 這會建立欄位以新增轉譯器。 接下來,將 MarsCuriosityRover 物件的子模型物件拖曳到這些欄位中。

    Screenshot of configuring Clipping Objects to enable clipping feature.

  2. 在 [階層] 視窗中啟用 ClippingObjects 預製專案,確定已開啟 Clipping 物件