共用方式為


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

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

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

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

建置新的 2D UWP 應用程式

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

若要開始建置 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 平台

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

我們將討論您可以使用 下面的 Windows.Holographic 裝置系列將應用程式專門限制為 HoloLens 的方法。

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

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

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

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

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

您的應用程式現在能夠在現今的 Windows 裝置上執行,例如桌面、行動裝置、Xbox、Windows Mixed Reality 沉浸式頭戴式裝置、HoloLens 和未來的 Windows 裝置。 但是,要實際以所有這些設備為目標,您需要確保您的應用程序以 Windows 為目標。 通用裝置系列。

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

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

  • 使用 Visual Studio 開啟應用程式的解決方案檔案,然後流覽至應用程式套件資訊清單
  • 以滑鼠右鍵按一下解決方案中的 Package.appxmanifest 檔案,然後移至 [檢視程式碼]
    package.appx方案總管中的清單
  • 確保您的目標平台是 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 應用程式以 “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 現在應該會在應用程式程式碼中的某個位置中斷。
    • 如果您的應用程式不會因為未處理的錯誤而立即當機或中斷偵錯工具,請檢查應用程式核心功能,以確保所有內容都正常執行且正常運作。 您可能會看到如下圖所示的錯誤 (正在) 處理的內部例外狀況。 為確保您不會錯過影響應用程式體驗的內部錯誤,請執行自動化測試和單元測試,以確保一切如預期般運作。

載入 HoloLens 模擬器,其中包含顯示系統例外狀況的 UWP 範例

更新您的使用者介面

現在您的 UWP 應用程式會在沉浸式頭戴式裝置和 HoloLens 上以 2D 全像投影的形式執行,接下來我們將確保它看起來很漂亮。 以下是需要考量的事項:

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

2D 應用程式檢視解析度和比例係數

來自響應式設計

Windows 10 將所有視覺設計從真實屏幕像素移動到有效像素。 這表示開發人員會遵循 Windows 10 人機介面指導方針來設計其 UI,以取得有效圖元,而 Windows 縮放會確保這些有效圖元的大小正確,以跨裝置、解析度、DPI 等來使用。 有關更多信息,請參閱 MSDN 上的這本精彩讀物

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

1280x720、150%DPI (853x480 有效像素)

此解決方案有幾個優點:

  • 這種有效的像素佈局將具有與平板電腦或小型台式機大致相同的信息密度。
  • 它與在 Xbox One 上運行的 UWP 應用程式的固定 DPI 和有效像素相匹配,從而實現跨裝置的無縫體驗。
  • 當在我們全球應用程式的操作距離範圍內進行縮放時,這個尺寸看起來不錯。

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

做:

  • 請遵循 HIG) (Windows 10人機介面指南,了解樣式、字型大小和按鈕大小。 HoloLens 會執行這項工作,以確保您的應用程式具有相容的應用程式模式、可讀取的文字大小,以及適當的點擊目標大小。
  • 請確定您的 UI 遵循 回應式設計 的最佳做法,以最佳方式呈現 HoloLens 的唯一解析度和 DPI。
  • 使用 Windows 中的「淺色」色彩主題建議。

不要:

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

了解應用程式模型

混合實境的應用程式模型設計為使用 Mixed Reality 首頁,其中許多應用程式會一起存在。 將此視為桌面的混合實境對等物,您可以在其中同時執行許多 2D 應用程式。 這會影響應用程式生命週期、磚和應用程式的其他主要功能。

應用程式列和後退按鈕

2D 視圖在其內容上方裝飾有應用程式列。 應用程式列有兩個應用程式特定個人化點:

標題:顯示與應用程式執行個體相關聯的磚顯示名稱

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

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

測試 2D 應用程式的設計

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

新的輸入可能性

HoloLens 使用先進的深度傳感器來查看世界並查看用戶。 這可以實現高級手勢,例如 綻放隔空點擊。 強大的麥克風還可以實現 語音體驗

使用桌面耳機,用戶可以使用運動控制器指向應用程序並採取行動。 他們還可以使用遊戲手把,用目光瞄準物體。

Windows 會處理 UWP 應用程式的所有這些複雜性,將您的 注視、手勢、語音和運動控制器輸入轉譯為抽象化輸入機制的 指標事件 。 例如,使用者可能已用手進行隔空輕觸,或拉動運動控制器上的選取扳機,但 2D 應用程式不需要知道輸入的來源 - 他們只會看到 2D 觸控按下,就像在觸控螢幕上一樣。

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

  • 注視 會變成暫留事件,只要凝視您的應用程式,就會意外觸發功能表、彈出視窗或其他使用者介面元素彈出。
  • 注視不像滑鼠輸入那麼精確。 針對 HoloLens 使用適當大小的命中目標,類似於觸控友善的行動應用程式。 應用程序邊緣附近的小元素特別難以交互。
  • 使用者必須切換輸入模式,才能從捲動到拖曳,再到兩指平移。 如果您的應用程式是針對觸控輸入所設計,請考慮確保沒有鎖定任何主要功能,以兩指平移。 如果是這樣,請考慮使用替代輸入機制,例如可以啟動兩根手指平移的按鈕。 例如,地圖應用程式可以透過兩根手指平移來縮放,但有一個加號、減號和旋轉按鈕,可透過按一下來模擬相同的縮放互動。

語音輸入 是混合實境體驗的重要部分。 我們已啟用 Windows 10 中的所有語音 API,在使用耳機時為 Cortana 提供支援。

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

應用程式啟動並執行之後,請封裝您的應用程式以 提交至 Microsoft Store

另請參閱