Hololens開發(fā)之全息圖100

官方網(wǎng)站見:https://developer.microsoft.com/en-us/windows/mixed-reality/holograms_100
這篇教程將會帶領(lǐng)你用Unity引擎創(chuàng)建一個基本的混合現(xiàn)實App
前提條件: win10電腦且安裝了開發(fā)需要的正確工具

第一步 創(chuàng)建一個新工程
為了用Unity創(chuàng)建一個App,你首先需要創(chuàng)建一個工程。這個工程有幾個文件夾,最重要的的是 Assets 文件夾,這個文件夾保存有你用數(shù)字內(nèi)容創(chuàng)建工具導(dǎo)入的所有資產(chǎn)文件,比如用 Maya, Max Cinema 4D or Photoshop,所有你用Visual Studio 或者你喜歡的代碼編輯器創(chuàng)建的代碼,和一些用Unity創(chuàng)建的內(nèi)容文件,有場景、動畫和其他Unity資產(chǎn)類型等。
為了構(gòu)建和部署UWP應(yīng)用程序,Unity可以將項目導(dǎo)出為Visual Studio解決方案,其中包含所有必需的資產(chǎn)和代碼文件。
1 Start Unity 開始Unity
2 Select New 選擇新建
3 Enter a project name (e.g. "MixedRealityIntroduction") 輸入一個項目名稱
4 Enter a location to save your project
5 Ensure the 3D toggle is selected
6 Select Create project
恭喜,你現(xiàn)在已經(jīng)準(zhǔn)備好開始你的混合現(xiàn)實定制了。

第二步 設(shè)置相機(jī)
The Unity Main Camera handles head tracking and stereoscopic rendering. There are a few changes to make to the Main Camera to use it with mixed reality.
Unity的主攝像機(jī)處理頭部跟蹤和立體渲染,用Unity做混合現(xiàn)實開發(fā)主攝像機(jī)有一些變化需要設(shè)置。

  1. 選擇 File > New Scene
    首先, 如果你把用戶的起始位置想象成(X:0,Y:0,Z:0),你制定App會更容易。因為主攝像頭是在跟蹤用戶頭部的移動 , 通過設(shè)置主攝像機(jī)的起始位置可以設(shè)置用戶的起始位置。
    1. Select Main Camera in the Hierarchy 面板
      2.在Inspector 面板, 找到 Transform component 和改變 Position 從默認(rèn)的 (X: 0, Y: 1, Z: -10) 到 (X: 0, Y: 0, Z: 0)
      其次, 默認(rèn)的相機(jī)背景需要一些思考。
      對于Hololens 的應(yīng)用,現(xiàn)實世界應(yīng)該出現(xiàn)在相機(jī)渲染的一切背后,不需要天空貼圖;
    2. 在Inspector 面板選中 Main Camera,找到組件Camera然后修改ClearFlags 的下拉列表從Skybox到 Solid Color;
    3. 選中Background 的color修改RGBA的值為 (0, 0, 0, 0)
      對于混合現(xiàn)實的應(yīng)用程序到身臨其境的耳機(jī),我們可以用默認(rèn)的Unity提供的Skybox texture
      1 在Inspector 面板選中 Main Camera,找到組件Camera然后修改ClearFlags 的下拉列表值為Skybox;
      第三,讓我們考慮一下Camera的近切面,當(dāng)用戶接近一個對象或者一個對象接近一個用戶時,阻止物體靠近用戶的眼睛。
      對于HoloLens的應(yīng)用,near clip plane 可以設(shè)置為HoloLens推薦的0.85米。
    4. 在Inspector 面板選中 Main Camera,找到組件Camera修改Near Clip Plane的值從默認(rèn)0.3到0.85;
      對于混合現(xiàn)實的應(yīng)用程序到身臨其境的耳機(jī),我們可以用默認(rèn)的Unity提供的設(shè)置。
    5. 在Inspector 面板選中 Main Camera,找到組件Camera保持Near Clip Plane的值為默認(rèn)0.3;
      最后,讓我們保存目前的項目,為了保存場景修改,select File > Save Scene As, name the scene Main, and 選擇Save.

第三步 設(shè)置項目設(shè)置
在這一章中,我們將設(shè)置一些Unity項目設(shè)置,幫助我們將Windows Holographic SDK作為開發(fā)目標(biāo)。我們還將為我們的應(yīng)用程序設(shè)置一些質(zhì)量設(shè)置。最后,我們將確保我們的構(gòu)建目標(biāo)設(shè)置為Windows Store。
Unity的性能和質(zhì)量設(shè)置
由于在HoloLens上保持高幀速率非常重要,因此我們希望將質(zhì)量設(shè)置調(diào)整為最佳性能。有關(guān)更詳細(xì)的性能信息,Unity的性能建議。
1 選擇 Edit > Project Settings > Quality
2 選擇 the dropdown under the Windows Store logo and select Very Low. 當(dāng)Windows Store列中的box和最快的行是綠色的時候,您就會知道設(shè)置是正確的。
對于針對遮擋顯示的混合現(xiàn)實應(yīng)用程序,可以將質(zhì)量設(shè)置保留為默認(rèn)值。


image.png

Target Windows 10 SDK
我們需要讓Unity知道我們試圖導(dǎo)出的應(yīng)用程序應(yīng)該創(chuàng)建一個身臨其境的視圖,而不是2D視圖。我們通過啟用針對Windows 10 SDK的Unity虛擬現(xiàn)實支持來實現(xiàn)這一點。
1 選擇Edit > Project Settings > Player
2 在Inspector 面板click on the Windows Store tab
3 展開 XR Settings組.
4 在“ 渲染”部分中,選中“支持虛擬現(xiàn)實”復(fù)選框以添加新的虛擬現(xiàn)實SDK列表,并確認(rèn)“Windows混合現(xiàn)實”列為支持的SDK。
5 在“ 其他設(shè)置配置”部分中,確保將“ 后臺腳本”設(shè)置為.NET


image.png

image.png

真棒工作獲得所有的項目設(shè)置應(yīng)用。接下來,讓我們添加全息圖!

第四步 創(chuàng)建一個Cube
在Unity項目中創(chuàng)建多維數(shù)據(jù)集就像在Unity中創(chuàng)建其他對象一樣。在用戶面前放置一個立方體很容易,因為Unity的坐標(biāo)系映射到真實世界 - Unity中一米大約是現(xiàn)實世界中的一米。
1 在Hierarchy面板的左上角,選擇Create下拉菜單并選擇3D Object> Cube。
2 在“ 層次”面板中選擇新創(chuàng)建的多維數(shù)據(jù)集
3 在檢查器中找到Transform 部件并將位置更改為(X:0,Y:0,Z:2)。這將立方體定位在用戶起始位置的前方2米處。
4 在“ 變換”組件中,將Rotation更改為(X:45,Y:45,Z:45)并將“ 縮放”更改為(X:0.25,Y:0.25,Z:0.25)。這將立方體縮放到0.25米。
5 要保存場景更改,請選擇 File > Save Scene.

第五步 從Unity編輯器驗證設(shè)備
現(xiàn)在我們已經(jīng)創(chuàng)建了立方體,現(xiàn)在是時候快速檢查設(shè)備了。您可以直接從Unity編輯器中執(zhí)行此操作。
HoloLens使用Unity Remoting
1 在HoloLens上,安裝并運行Windows應(yīng)用商店中的 Holographic Remoting Player。在設(shè)備上啟動應(yīng)用程序,進(jìn)入等待狀態(tài)并顯示設(shè)備的IP地址。記下IP。
2 Change Platform to Universal Windows Platform and click Switch Platform. 將平臺更改為通用Windows平臺,然后單擊切換平臺。
3 在您的開發(fā)PC上,在Unity中,打開 Window > Holographic Emulation. “ 窗口”>“全息仿真”。
4 Emulation Mode from None to Remote to Device. 更改仿真模式由無到遠(yuǎn)程到設(shè)備。
5 在 Remote Machine遠(yuǎn)程機(jī)器中,輸入您之前提到的HoloLens的IP地址。
6 點擊Connect連接。
7 Connection Status changes to green Connected.確保連接狀態(tài)更改為綠色連接。
8 現(xiàn)在,您現(xiàn)在可以在Unity編輯器中單擊“ 播放 ”。
您現(xiàn)在可以在設(shè)備和編輯器中看到多維數(shù)據(jù)集。您可以暫停,檢查對象并進(jìn)行調(diào)試,就像您在編輯器中運行應(yīng)用程序一樣,因為這實際上是發(fā)生了什么事情,但視頻,音頻和設(shè)備輸入是通過網(wǎng)絡(luò)在主機(jī)和設(shè)備之間來回傳輸?shù)摹?br> 對于其他混合現(xiàn)實支持的耳機(jī)
1 使用USB電纜和HDMI或顯示器端口電纜將耳機(jī)連接到您的開發(fā)PC。
2 啟動混合現(xiàn)實門戶并確保您已完成首次運行體驗。
3 從Unity開始,您現(xiàn)在可以按下播放按鈕。
4 您現(xiàn)在可以在混合現(xiàn)實耳機(jī)和編輯器中看到立方體渲染。

第六步 從Visual Studio構(gòu)建并部署到設(shè)備
我們現(xiàn)在準(zhǔn)備將我們的項目編譯到Visual Studio并部署到我們的目標(biāo)設(shè)備。
導(dǎo)出到Visual Studio解決方案
1 打開文件>生成設(shè)置窗口。 File > Build Settings
2 點擊Add Open Scenes添加場景。 Add Open Scenes
3 將平臺更改為通用Windows平臺,然后單擊切換平臺。Change Platform to Universal Windows Platform and click Switch Platform.
4 在Windows Store設(shè)置中確保SDK是Universal 10。Windows Store settings ensure, SDK is Universal 10.
5 對于目標(biāo)設(shè)備,請將任何設(shè)備留給 occluded displays或切換到HoloLens。
6 UWP構(gòu)建類型應(yīng)該是D3D。 UWP Build Type should be D3D.
7 UWP SDK可以留在 Latest installed.。
8 在調(diào)試下檢查Unity C#項目。Check Unity C# Projects under Debugging.
9 點擊Build。
10 在文件資源管理器中,單擊新建文件夾并將文件夾命名為“App”。
11 隨著應(yīng)用程序選定的文件夾,單擊選擇文件夾按鈕。
12 當(dāng)Unity完成構(gòu)建時,將出現(xiàn)一個Windows文件資源管理器窗口。
13 在文件資源管理器中打開App文件夾。
14 打開生成的Visual Studio解決方案(在本例中為MixedRealityIntroduction.sln)
編譯Visual Studio解決方案
最后,我們將編譯導(dǎo)出的Visual Studio解決方案,部署它,然后在設(shè)備上進(jìn)行嘗試。
1 使用Visual Studio中的頂部工具欄,將目標(biāo)從“ 調(diào)試”更改為“ 發(fā)布”,并將ARM從ARM更改為X86。 Debug to Release and from ARM to X86.
對于部署到設(shè)備而不是仿真器,說明會有所不同。按照與您的設(shè)置相符的說明進(jìn)行操作
通過Wi-Fi部署到混合現(xiàn)實設(shè)備
1 單擊“ 本地計算機(jī)”Local Machine 按鈕旁邊的箭頭,然后將部署目標(biāo)更改為“ 遠(yuǎn)程計算機(jī)”。Remote Machine.
2 輸入您的混合現(xiàn)實設(shè)備的IP地址并將身份驗證模式 Authentication Mode更改為HoloLens的Universal(未加密協(xié)議)和其他設(shè)備的Windows。
3 單擊調(diào)試>開始不調(diào)試。Click Debug > Start without debugging.
對于HoloLens,如果這是第一次部署到您的設(shè)備,您將需要配對使用Visual Studio。

通過USB部署到混合現(xiàn)實設(shè)備
確保您的設(shè)備通過USB電纜插入。
1 對于HoloLens,請單擊“ 本地計算機(jī)”按鈕旁邊的箭頭,然后將部署目標(biāo)更改為“ 設(shè)備”Device。
2 要鎖定連接到PC的遮擋設(shè)備,請將設(shè)置保存到本地計算機(jī)上。確保你有混合現(xiàn)實門戶運行。
3 單擊調(diào)試>開始不調(diào)試。
部署到模擬器
1 點擊設(shè)備按鈕旁邊的箭頭,然后從下拉菜單中選擇HoloLens Emulator。
2 單擊調(diào)試>開始不調(diào)試。
試試你的應(yīng)用程序
現(xiàn)在,您的應(yīng)用程序已部署,請嘗試移動整個立方體,并觀察它保持在您面前的世界。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,983評論 6 537
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,772評論 3 422
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,947評論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,201評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 71,960評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,350評論 1 324
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,406評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,549評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,104評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 40,914評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,089評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,647評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,340評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,753評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,007評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,834評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 48,106評論 2 375

推薦閱讀更多精彩內(nèi)容