共用方式為


更新適用於 Windows Mixed Reality的 2D UWP 應用程式

Windows Mixed Reality 可讓您的使用者看到全像投影,就像在實體和數位世界中一樣。 HoloLens 和您附加沉浸式頭戴裝置配件的桌面電腦的核心都是 Windows 10 裝置。 您幾乎可以將市集中的所有 通用 Windows 平台 (UWP) 應用程式當作 2D 應用程式執行。

建立混合實境的 2D UWP 應用程式

將 2D 應用程式帶入混合實境頭戴裝置的第一個步驟,是讓您的應用程式在桌面監視器上以標準 2D 應用程式執行。

建置新的 2D UWP 應用程式

若要建置適用於混合實境的新 2D 應用程式,您可以建置標準 2D 通用 Windows 平台 (UWP) 應用程式。 該應用程式不需要進行其他應用程式變更,即可在混合實境中以平板方式執行。

若要開始建置 2D UWP 應用程式,請參閱 建立您的第一個應用程式 一文。

將現有的 2D 市集應用程式帶入 UWP

如果您在市集中已經有 2D Windows 應用程式,請確定其目標為 Windows 10 通用 Windows 平台 (UWP) 。 以下是您目前市集應用程式可能擁有的所有可能起點:

起點 AppX 指令清單平台目標 如何將此設為通用?
Windows Phone (Silverlight) Silverlight 應用程式指令清單 移轉至 WinRT
Windows Phone 8.1 通用版 8.1 不包含平台目標的AppX指令清單 將您的應用程式移轉至 通用 Windows 平台
Windows 市集 8 8 個不包含平台目標的 AppX 指令清單 將您的應用程式移轉至 通用 Windows 平台
Windows 市集 8.1 通用 8.1 不包含平台目標的AppX指令清單 將您的應用程式移轉至 通用 Windows 平台

如果您目前有 2D Unity 應用程式建置為電腦上的 Win32 應用程式,Mac & Linux 獨立組建目標,請切換至混合實境的 通用 Windows 平台 建置目標。

我們將討論如何使用 下列 Windows.Holographic 裝置系列,將您的應用程式特別限制為 HoloLens。

在 Windows Mixed Reality沉浸式頭戴裝置中執行 2D 應用程式

如果您已將 2D 應用程式部署到桌面電腦,並在您的監視器上試用,您就可以在沉浸式桌面頭戴裝置上試用!

只要移至混合實境頭戴式裝置內的 [開始] 功能表,然後從該處啟動應用程式即可。 桌面殼層和全像攝影殼層都共用同一組 UWP 應用程式,因此當您從 Visual Studio 部署之後,應用程式應該已經存在。

同時以沉浸式頭戴裝置和 HoloLens 為目標

恭喜您! 您的應用程式現在使用 Windows 10 通用 Windows 平台 (UWP) 。

您的應用程式現在能夠在現今的 Windows 裝置上執行,例如 Desktop、Mobile、Xbox、Windows Mixed Reality 沉浸式頭戴裝置、HoloLens 和未來的 Windows 裝置。 不過,若要以所有這些裝置為目標,您必須確定您的應用程式是以 Windows 為目標。 通用裝置系列。

將您的裝置系列變更為 Windows.Universal

現在讓我們跳到 AppX 指令清單,以確保您的 Windows 10 UWP 應用程式可以在 HoloLens 上執行:

  • 使用 Visual Studio 開啟應用程式的方案檔,並瀏覽至應用程式套件指令清單
  • 以滑鼠右鍵按兩下方案中的 Package.appxmanifest 檔案,然後移至 [ 檢視程式代碼]
    方案總管 中的 package.appxmanifest
  • 確定您的目標平臺是 Windows。 相依性區段中的通用
    <Dependencies>
      <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.10240.0" MaxVersionTested="10.0.10586.0" />
    </Dependencies>
    
  • 救!

如果您未針對開發環境使用 Visual Studio,可以在您選擇的文字編輯器中開啟 AppXManifest.xml ,以確保您的目標是 Windows.UniversalTargetDeviceFamily

在 HoloLens 模擬器中執行

現在您的 UWP app 以 「Windows.Universal」 為目標,讓我們建置您的應用程式,並在 HoloLens 模擬器中執行它。

  • 請確定您已 安裝 HoloLens 模擬器

  • 在 Visual Studio 中,選取您應用程式的 x86 組建組態

    Visual Studio 中的 x86 組建組態

  • 在部署目標下拉功能表中選取 HoloLens 模擬器

    部署目標清單中的 HoloLens 模擬器

  • 取 [偵錯 > ] [開始偵錯 ] 以部署您的應用程式並開始偵錯。

  • 模擬器將會啟動並執行您的應用程式。

  • 使用鍵盤、滑鼠和 Xbox 控制器,將您的應用程式放在世界中以啟動它。

    使用 UWP 範例載入的 HoloLens 模擬器

後續步驟

此時,可能會發生下列兩件事之一:

  1. 您的應用程式會顯示其啟動顯示,並在將它放在模擬器之後開始執行! 棒!
  2. 或者,在您看到 2D 全像投影的載入動畫之後,載入將會停止,而您只會在其啟動顯示畫面上看到您的應用程式。 這表示發生錯誤,需要更多調查才能瞭解如何讓應用程式在 Mixed Reality 中運作。

您必須進行偵錯,以找出阻止 UWP 應用程式從 HoloLens 啟動的可能問題根目錄。

在調試程式中執行您的UWP應用程式

這些步驟將逐步引導您使用 Visual Studio 調試程式對 UWP 應用程式進行偵錯。

  • 如果您尚未這麼做,請在 Visual Studio 中開啟您的解決方案。 將目標變更為 HoloLens 模擬器 ,並將組建組態變更為 x86
  • 取 [偵錯 > ] [開始偵錯 ] 以部署您的應用程式並開始偵錯。
  • 使用滑鼠、鍵盤或 Xbox 控制器將應用程式放在世界中。
  • Visual Studio 現在應該會中斷應用程式程式代碼中的某個位置。
    • 如果您的應用程式因為未處理的錯誤而不會立即損毀或中斷調試程式,請進行應用程式核心功能的測試階段,以確定一切都在執行中且正常運作。 您可能會看到如下所示的錯誤 (正在處理) 的內部例外狀況。 若要確保您不會錯過會影響應用程式體驗的內部錯誤,請執行自動化測試和單元測試,以確保一切如預期般運作。

以顯示系統例外狀況的 UWP 範例載入的 HoloLens 模擬器

更新您的UI

現在您的 UWP 應用程式正在沉浸式頭戴裝置上執行,而 HoloLens 則是 2D 全像投影,接下來我們會確定它看起來很美觀。 以下是需要考量的事項:

  • Windows Mixed Reality 會以固定解析度和 DPI 執行所有 2D 應用程式,其等於 853x480 有效圖元。 請考慮您的設計是否需要以此規模進行精簡,並檢閱下列設計指引,以改善您在 HoloLens 和沉浸式頭戴裝置上的體驗。
  • Windows Mixed Reality 不支援 2D 動態磚。 如果您的核心功能在動態磚上顯示資訊,請考慮將該資訊移回您的應用程式,或探索 3D 應用程式啟動器

2D 應用程式檢視解析度和縮放比例

從回應式設計

Windows 10 會將所有視覺效果設計從實際螢幕圖元移至有效圖元。 這表示開發人員會遵循有效圖元的 Windows 10 人性化介面指導方針來設計其UI,而Windows調整可確保這些有效圖元的大小適合用於裝置、解析度、DPI 等等。 如需詳細資訊,請參閱 MSDN 和此組建簡報的這個絕佳閱讀

即使有獨特的能力可將應用程式放在您的世界某一範圍內,仍建議使用類似電視的檢視距離,以產生與注視/手勢的最佳可讀性與互動。 因此,Mixed Reality 首頁中的虛擬平板會在下列位置顯示您的一般 UWP 檢視:

1280x720,150%DPI (853x480 有效圖元)

此解決方案有數個優點:

  • 這個有效圖元版面配置的資訊密度與Tablet或小型桌面大約相同。
  • 它符合 Xbox One 上執行之 UWP 應用程式的固定 DPI 和有效圖元,可讓您在裝置之間獲得順暢的體驗。
  • 此大小在調整到全球應用程式的作業距離範圍時看起來不錯。

2D 應用程式檢視介面設計最佳做法

做:

  • 請遵循 Windows 10 人為介面指導方針 (樣式、字型大小和按鈕大小的 HIG) 。 HoloLens 會執行此工作,以確保您的應用程式具有相容的應用程式模式、可讀取的文字大小,以及適當的點擊目標大小。
  • 請確定您的UI遵循 回應式設計 的最佳做法,以查看HoloLens的獨特解析度和 DPI。
  • 使用來自 Windows 的「淺色」色彩主題建議。

不要:

  • 在混合實境中太過大地變更您的UI,以確保使用者在頭戴式裝置內和頭戴式裝置外都有熟悉的體驗。

瞭解應用程式模型

混合實境的應用程式模型是設計成使用 Mixed Reality Home,其中有許多應用程式一起存取。 將此視為桌面的混合實境對等專案,您會在其中一次執行許多 2D 應用程式。 這會影響應用程式生命週期、磚,以及應用程式的其他重要功能。

應用程式行和返回按鈕

2D 檢視會在其內容上方以應用程式行裝飾。 應用程式行有兩個點的應用程式特定個人化:

標題:顯示與應用程式實例相關聯之磚的顯示名稱

返回按鈕: 按下時會引發 BackRequested 事件。 [上一頁] 按鈕可見 度是由 SystemNavigationManager.AppViewBackButtonVisibility 所控制。

2D 應用程式檢視中的應用程式行 UI
2D 應用程式檢視中的應用程式行 UI

測試 2D 應用程式的設計

請務必測試您的應用程式,以確定文字可讀取、按鈕可設定目標,且整體應用程式看起來正確無誤。 您可以在桌面頭戴式裝置、HoloLens、模擬器或解析度設為 1280x720 @150% 的觸控裝置上 進行測試

新的輸入可能性

HoloLens 使用進階深度感測器來查看世界並查看使用者。 這可啟用進階手勢,例如 開啟空中點選。 功能強大的麥克風也會啟用 語音體驗

使用桌面頭戴式裝置時,用戶可以使用運動控制器來指向應用程式並採取動作。 他們也可以使用遊戲板,以物件注視為目標。

Windows 會處理 UWP app 的所有複雜度,將 您的注視、手勢、語音和運動控制器輸入轉譯成將輸入機制抽象化的 指標事件 。 例如,使用者可能已使用手部進行空中點選,或在運動控制器上提取 Select 觸發程式,但 2D 應用程式不需要知道輸入的來源 -他們只會看到 2D 觸控按鍵,就像在觸摸屏上一樣。

以下是將 UWP 應用程式帶入 HoloLens 時,您應該瞭解的輸入概念/案例:

  • 注視 會變成暫留事件,這會意外觸發功能表、飛出視窗或其他使用者介面元素,只要在您的應用程式周圍注視即可彈出。
  • 註視不如滑鼠輸入精確。 針對 HoloLens 使用適當大小的點擊目標,類似於觸控易懂的行動應用程式。 接近應用程式邊緣的小型元素特別難以互動。
  • 用戶必須切換輸入模式,才能從捲動到拖曳到兩指移動流覽。 如果您的應用程式是針對觸控輸入所設計,請考慮確保沒有主要功能鎖定在兩指移動流覽後方。 若是如此,請考慮使用替代的輸入機制,例如可以啟動兩指移動流覽的按鈕。 例如,地圖應用程式可以使用兩個手指移動瀏覽來縮放,但具有加號、減號和旋轉按鈕,以模擬與單擊相同的縮放互動。

語音輸入 是混合實境體驗的重要部分。 我們已啟用使用頭戴式裝置時,Windows 10 為 Cortana 提供功能的所有語音 API。

發佈和維護您的通用應用程式

一旦您的應用程式啟動並執行,請封裝您的應用程式,以將其提交至 Microsoft 市集。

另請參閱