係統粉 > IT資訊 > 微軟資訊

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗

發布時間:2017-06-20    瀏覽數:

6月18日,由微軟舉辦的“HoloLens與混合現實技術集會深圳站”在騰訊大廈舉行。會上,微軟總部Visual C++項目經理陸榕、微軟(中國)有限公司技術顧問梅穎廣與到場開發者分享了如何利用Unity打造MR體驗。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(1)

以下內容由VR陀螺整理,有刪改。

用unity開發MR相關應用,目前主要是HoloLens,後期會有MR的頭顯設備。其實不管用什麼設備,隻要是MR框架上的設備,都可以使用這個開發方法。

整個演講分為五個部分:

1、開發的準備工作。

2、沒有開發過HoloLens有一個零基礎教程。【Holograms:101】

3、微軟的開源項目HoloToolkit-Unity。

4、HoloLens的新的交互方式在unity中怎麼開發。

5、HoloLens更趨向AR類的眼鏡,怎麼在HoloLens使用vuforia SDK進行開發。

一:開發的準備

1:環境:推薦使用Visual Studio2017,不過其實從Visual Studio2015Update 3就可以了。從公司戰略上來說,我們要給大家推薦最新的。

如果你要開發MR的頭顯內容或者以後的話,那就必定要用Visual Studio2017。

3:安裝HoloLens的模擬器。不管你有沒有PC端的模擬器,都是推薦安裝的,這樣不用每次修正都到頭盔上。

5-6:unity推薦版本最新的,從unity5.4開始就支持HoloLens的開發了。現在是unity5.6是最好的。

Portal的話也推薦使用。

7.8.9是你的電腦開發配置相關,需要在64 位 Windows 10專業版、企業版或教育版下開發。

4 核及以上 64 位 CPU,8G 及以上內存,配置虛擬化與 Hyper-V。GPU 支持 DirectX 11.0 或以上,WDDM 1.2 驅動及以上的版本。

當然這些是基於HoloLens的開發,如果是其他沉浸式MR開發的話,我稍後介紹。

下麵需要說到的是兩類應用。一類是在運行的時候是帶窗口的。這一類可以將2D的窗口隨意地貼在地上、牆上、天花板上,叫2D類應用。這個非常容易,不是我們這節課的重點。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(2)

第二個是全息應用,就是和真實場景的MR的應用。

這類應用也有兩個方法,第一個是使用最原始的Holograms的,對性能要求和經驗比較多。

一般來說我們還是推薦unity來做,就足夠了。

HoloLens上90%的應用都是用unity開發的,這是unite大會上說的,這個數據應該是可靠的。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(3)

開發過程中包含的部分(HoloLens)

分為18塊。3個部分。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(4)

最上麵的6個:3D程序、材質、腳本、貼圖、……基本上,HoloLens就是一個標準的3D應用。

最下麵的這6個:HoloLens所具有的特有的,HoloLens有三個最主要的交互方式,當然傳統的方式也是支持的,不過我們推薦這三種:凝視、手勢和語音。

這是三個GGV,三個英文單詞的首字母。

後麵是三個spatial,一個是空間映射,第二個是空間聲音,你在程序中需要處理,第三個是空間坐標,需要不斷掃描,坐標是不斷形成的,以此在掃描相對位置後,保證你看到的環境,畫麵是相對穩定的。

這一部分是你做應用開發的是你要特別注意的。因為這時候HoloLens特有的。

中間這一部分是工具,也是分為6個,這6個工具可以幫助你完成上麵6個和下麵6個的效果。

當你開發的時候,你先要確定自己需要的是哪一塊,然後再去找處理這一塊的方法。

二:開發從零開始【Holograms:101】使用介紹

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(5)

1:打開unity,選3D

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(6)

2:Hierarchy 中找到Main Camera,做一些設置:

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(7)

01、坐標歸零,

02、Clear Flags 為 Solid Color,Background,設置成黑色。原因是HoloLens和電腦的成像原理不同,所以你設置為背景的話,要選黑色。

03、Clipping Planes 的 Near 推薦為 0.3 ~ 0.85 之間的值,不在這個區間的話,在HoloLens不會被顯示。0.85之內差不多是你手臂比較自然的交互。

這個距離可以自己調,不過這個距離是沉浸感最好的。

3:設置品質

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(8)

設置品質,可以找到Unity 編輯器菜單欄 Edit → Project Settings → Quality,推薦選擇最上麵的fastest。

這是推薦,從開發的角度,更關注於速度。

4:構建

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(9)

Unity 編輯器菜單欄 File → Build Settings,微軟從Windows8開始,unity就把應用都歸類到Windows store裏麵的。所以要注意選擇 SDK 為 Universal 10,Target device 為 HoloLens。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(10)

下麵有個UWP SDK種類選擇,需要選擇D3D。不要選擇XAML

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(11)

這裏注意一下Build Settings,選擇VR。這裏HoloLens是歸類在VR裏麵的,這裏你要勾選一下。

之後就和之前的操作一樣啦,如果你安裝了模擬器的話,旁邊會有模擬器的界麵。你可以運行,如果你是直接連的HoloLens的話,你可以直接輸出到HoloLens了。

你可以在PC上使用鍵盤鼠標,模擬凝視、手勢操作。

按一個按鍵,代表你做了開發動作,就像你玩雙搖杆的遊戲。也是通過鍵盤,所以,你勾選了鍵盤的話,可以模擬你的凝視、手勢操作,如果沒選的話,就不會去模擬你的操作了。就變成鍵盤。

第三部分:HoloToolkit-Unity工具介紹

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(12)

https://github.com/Microsoft/HoloToolkit-Unity

有一個是HoloToolkit,後麵沒有-unity的,可以選擇其他引擎開發。你如果選用HoloToolkit-Unity,你拿過來對你的開發其實是相當有幫助的。

也是分為六個部分,每一個部分大概有這麼些內容:

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(13)

第一個:比如說交互方式Input,基本上就是那三個交互方式的處理。分別是 GazeManager.cs、 GestureManager.cs、 HandsManager.cs 和KeywordManager.cs。現在都叫做InputManager。

之後肯定也會對應其他的頭顯設備的,包括以後的VR設備。所以全都歸類為InputManager了。

第二個是空間映射、空間聲音,如果你要模擬,你可以直接參考HoloToolkit-Unity的代碼寫法就可以,如果你不參考的話,你就需要自己寫,相對麻煩一些。

還有一個是utility,比如說要做一個“廣告牌”,在北京站我以為都知道,我就跳過去了。舉手的不多,我也不深入講了。

還有交互方麵的視角。如果你要換一個視角,如果你沒有UI的話,用戶會很茫然,戴上去後什麼都沒有。這個時候你有兩種辦法,比如在用戶看的方向模擬聲音,隻要他不是耳朵上有障礙的話,他會往那個方向看。第二個是做一些箭頭指示,引導他往哪個方向看。

箭頭指示到底這麼做呢?utility裏麵有可以參考的。

其實你就會發現,在HoloToolkit-Unity裏麵有很多功能,隻要你去挖掘的話,能給你很多的幫助,其次HoloToolkit-Unity在目錄的編排也優化得比較好。比如腳本就在腳本目錄下,材質就在材質目錄下。

你寫了這麼多我還真不會用,HoloToolkit-Unity文檔方麵的教程不多,但是你可以在最下麵有個test目錄,就是HoloToolkit-Unity-test。就是一個測試,把所有的功能都有測試案例。

你直接到test裏麵去看,你就知道怎麼用。這裏目錄非常有用。

最後說一下,HoloToolkit-Unity具體怎麼用呢?

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(14)

01、HoloToolkit-Unity就是一個開源的東西,你從unity進去,你就可以看到基本模塊,你可以直接打包。

使用unity打開HoloToolkit工程,右擊Assets,導出Package。

你可以選擇你所要導入的package。

02、【操作演示】

03、在這邊你可以看到一個build,在這裏你可以用來build工程,你簡單一點也可以直接輸出。也可以直接發布到HoloLens真機上,非常方便。

不過提醒一下,你還是用unity自己的build去做,比較安全一些。

第四部分:HoloLens的特有6大部分怎麼開發。

6大部分:GGV和空間

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(15)

凝視:兩個方法,射線的交互,做一個碰撞檢測。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(16)「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(17)

手勢:在unity中有一個叫手勢識別器的東西,它不是判斷手的動作的,它之後一個事件,就yes和No。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(18)「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(19)

隻要這個事件被觸發,這個函數就會被調用。

語音識別:這個要提醒的是,現在HoloLens主要是識別英語。其次是需要一個麥克風和網絡,做語音識別的話,這兩個記得打開。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(20)「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(21)

都在InputManager裏,大家拿去用就可以了。

空間映射:spatial mapping,你不能自己修改,你可以保存下來,這個與你看的方向有關。你看哪個地方,哪個地方就會產生空間映射。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(22)「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(23)「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(24)

Unity裏麵也有一些函數是可以獲得空間映射的數據的,如果需要的話,可以下載下來,減少你空間掃麵的時間,你可以把數據在unity裏麵用。

Unity裏麵有組件是和它配套的,比如game object。

空間聲音:unity有一個空間音效的組件,你直接就可以用,在插件上你隻能選擇微軟的,其他的不支持。參數都是固定的。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(25)「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(26)「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(27)

聲音的3D效果,拖到最右邊效果是最好的,這些操作你隻要按官方推薦的就好。

空間坐標:空間錨標

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(28)

比如三個設備看到的物體是同一個,那怎麼實現,就是那個物體對三個人來說是在同樣位置的,而且一個人交互,另外兩個人也可以看到,那就是首先需要設備是全套,其次是交互的數據三台設備是共享的。最後也是最重要的,那就是空間錨標。

第五部分:如何用vuforia開發HoloLens應用

如果寫過手機AR遊戲的話,對vuforia還是比較熟悉的。隻要你按這個步驟去做,就可以實現了。

1:下載vuforia

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(29)

2:裝在unity工程裏麵,根據你的係統選擇相應的版本下載即可。例如我的是Win10 64位,我就點擊5.4.1的“下載(Win)”按鈕,選擇Unity編輯器(64位)下載。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(30)

你把HoloLens裏麵的主相機(場景camera)拖到這個AR camera,那你在HoloLens看到的東西就能被vuforia的相機采集到。

3:配置項目以使用Vuforia應用

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(31)

隱藏部分:最後是沉浸感設備開發者的一個小小內容

不少開發者在問,微軟的VR平台現在構建地如何了,給大家彙報一下。大家都說微軟隻注重AR,MR,不注重VR產品,其實我們隻是稍微晚了一點啊。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(32)

從MR的HoloLens和沉浸式頭顯設備放在一起,HoloLens開發有6件事情,MR會擴展一些。

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(33)

第一是,HoloLens是不支持motion Controller的,隻有在VR裏麵有的。

第二是手勢,以後是VR產品是沒有手勢識別的。你直接使用motion controller就可以,不需要對純手勢進行識別。

第三個是空間坐標,空間聲音,都有,隻有空間映射目前還沒有ready,現在大家裝過創意者版本嗎?等今年秋天就會支持空間映射了。

MR現在到底準備的情況怎麼樣?

Ready和不ready的東西我都列在這裏了。

Unity有課程,MR的產品沒有課程,隻能自己去看,unity需要5.6的技術預覽版,才能開發VR產品。

Unity還是不推薦發motion controller的,他還是推薦使用XBOX的手柄去操作VR類的產品。

Ready的:

HoloLens的文檔大量更新,你可以直接看文檔,還有就是社區。做MR的產品的話,一定是Windows 10的創意者更新以後。你可以先看看文件,操作可能要晚一點。

推薦配置:4 核及以上 64 位 CPU,8G 及以上內存,配置虛擬化與 Hyper-V。GPU 支持 DirectX 12.0 ,WDDM 1.2 驅動及以上的版本。

我們的聯係方式:

商務合作 | 采訪 | 投稿 :文靜(微信 mutou_kiki)

交流分享 | 爆料:案山子 (微信 shimotsuki_jun)

投稿郵箱:tougao@youxituoluo.com

「全PPT」微軟技術專家詳解如何用Unity打造MR體驗(34)
上一篇:XBOX ONE X沒卵用!微軟吊打索尼癡人說夢 下一篇:沒這麼狠 微軟同意用戶把Win10 Pro還原回Win 10s

相關資訊

最新熱門應用

電腦問答