0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

HoloLens 2開(kāi)發(fā)怎么上手?

fFU3_vrtuoluo ? 來(lái)源:lq ? 2019-06-07 17:36 ? 次閱讀

在五月初舉行的MR Dev Days上,微軟不僅正式公開(kāi)了大量的開(kāi)發(fā)內(nèi)容,還開(kāi)放了HoloLens 2開(kāi)發(fā)動(dòng)手實(shí)驗(yàn)室,我們有幸在數(shù)小時(shí)內(nèi)快速構(gòu)建了一個(gè)引擎拆解應(yīng)用,效果如下:

這么簡(jiǎn)單就能做出來(lái)這樣的應(yīng)用?在MRTK 2的幫助下真的不難,但首先你需要了解HoloLens 2的一些開(kāi)發(fā)基礎(chǔ)知識(shí),在本篇文章中我們就來(lái)介紹從混合現(xiàn)實(shí)開(kāi)發(fā)者搭建開(kāi)發(fā)環(huán)境角度的新特性。

開(kāi)發(fā)環(huán)境

操作系統(tǒng)SDK

開(kāi)發(fā)HoloLens2應(yīng)用的電腦必須安裝有Windows SDK 18362以上版本,也就是要安裝“Windows 10 May 2019”或者說(shuō)1903的SDK。Windows本身需要是1809以上,也可以升級(jí)到1903(如果沒(méi)有推送,可以加入Insider Preview選擇Fast Track,有風(fēng)險(xiǎn))。

開(kāi)發(fā)工具

開(kāi)發(fā)工具首選還是Unity。完善的工具鏈,C#的開(kāi)發(fā)環(huán)境,天生的跨平臺(tái)特性,豐富的第三方插件,都使得Unity成為最方便好用的開(kāi)發(fā)載體。至少要升級(jí)到2018.3以上的版本。因?yàn)槟壳癠nity2019版本還不夠穩(wěn)定,所以在較長(zhǎng)時(shí)間之內(nèi),都將建議使用Unity2018進(jìn)行開(kāi)發(fā)。

Unreal引擎也已經(jīng)官方支持HoloLens 2,但暫時(shí)SDK還沒(méi)有被放出。Unreal引擎能夠打造非常高質(zhì)量的3D內(nèi)容,在一些場(chǎng)景下HoloLens 2可產(chǎn)生更好畫(huà)面效果。本來(lái)這次Build大會(huì)上的HoloLens 2 demo就是使用這套Unreal SDK制作的整套的登月火箭展示,效果相當(dāng)不錯(cuò),可惜由于一些不穩(wěn)定因素當(dāng)場(chǎng)演示失敗。

比較硬核的開(kāi)發(fā)者還可以選擇使用原生DirectX開(kāi)發(fā),如果水平高的話(huà)效率會(huì)高很多,這樣做的大多是一些擁有自研3D引擎的公司。OpenXR的runtime支持也已經(jīng)加入,但還比較早期。

由于HoloLens2仍然運(yùn)行的是UWP程序,所以不管你使用任何環(huán)境,最終還是需要Visual Studio 2017進(jìn)行打包發(fā)布。

MRTK v2

要方便地開(kāi)發(fā)HoloLens2應(yīng)用,最關(guān)鍵的是MRTK v2。MRTK提供了一整套在MR設(shè)備上操作、交互及協(xié)同的框架,在HoloLens一代的年代,我們還可以不使用MRTK自行開(kāi)發(fā),但到了HoloLens2的時(shí)代,我們幾乎已經(jīng)能繞不開(kāi)MRTK v2了(或者說(shuō),繞開(kāi)它的成本很高,且毫無(wú)意義。后文會(huì)再詳細(xì)討論MRTK v2)。也許你之前的應(yīng)用就是用MRTK v1開(kāi)發(fā)的,如果是這樣,官方提供了教程,可以將MRTK v1開(kāi)發(fā)的應(yīng)用遷移到MRTK v2。

HoloLens 2 或 模擬

有HoloLens 2當(dāng)然要用HoloLens 2啦!

沒(méi)有HoloLens2設(shè)備的話(huà),我們也可以使用模擬器進(jìn)行開(kāi)發(fā)。如要安裝HoloLens2模擬器,需要將操作系統(tǒng)升級(jí)到1809版本或以上。

編譯架構(gòu)

HoloLens2已經(jīng)進(jìn)化到ARM架構(gòu),因此在Visual Studio中,發(fā)布平臺(tái)要選擇ARM。Unity 2018.3版本尚不能支持ARM64,所以目前發(fā)布的平臺(tái)只是ARM32。如果要使用ARM64,需要等待Unity 2019穩(wěn)定。

開(kāi)發(fā)套件(MRTK v2)

MRTK v2相比老版本做了大量的進(jìn)化,不客氣地說(shuō),MRTK v2絕對(duì)是目前MR開(kāi)發(fā)最強(qiáng)大的套件,沒(méi)有之一。MRTK v2的代碼進(jìn)行了大量重構(gòu),橫跨了AR/VR/MR(統(tǒng)稱(chēng)XR),同時(shí),由于增加了對(duì)OpenVR的支持,MRTK v2的覆蓋面變得更加廣泛,可以直接支持HTC Vive和Oculus Rift等VR設(shè)備,擁有強(qiáng)大的輸入兼容性。經(jīng)過(guò)重構(gòu)的Input模塊,使得所有設(shè)備的不同輸入方式可以被包容在一起,開(kāi)發(fā)者可以用相對(duì)統(tǒng)一的思路,來(lái)處理各種不同設(shè)備的輸入方式。

重構(gòu)也使得MRTK v2有了更清晰的模塊化結(jié)構(gòu),更靈活的配置性和更好的擴(kuò)展性?;贛RTKPackage結(jié)構(gòu)進(jìn)行的開(kāi)發(fā),使得它的擴(kuò)展性得到了空前的提升。從下面的package結(jié)構(gòu)圖可窺一斑。

使用方面,除了很多組件變得更加清晰好用之外,還引入了大量的配置文件,可以方便地設(shè)置MR中的各種核心功能,還可以創(chuàng)建自己的配置以便切換。

最后,從MRTK v2的路線(xiàn)圖來(lái)看,目前發(fā)布的只是RC1版本,而開(kāi)發(fā)團(tuán)隊(duì)顯然有更大的野心,在后面的規(guī)劃中還有更多的內(nèi)容,讓我們拭目以待。

自然手勢(shì)

HoloLens 2給人印象最深刻的特性,就是可以用最自然的方式,讓雙手和虛擬物體交互了。通過(guò)我們此前提到的Azure Kinect深度攝像頭實(shí)時(shí)抓取高分辨率深度數(shù)據(jù),HoloLens 2通過(guò)機(jī)器學(xué)習(xí)能夠近實(shí)時(shí)捕捉手部的最多25個(gè)關(guān)節(jié),效果接近Leap Motion,這也就意味著我們可以掌控整個(gè)手部的動(dòng)作(有趣的是,在MR Dev Day上微軟的官方推薦也是用Leap Motion來(lái)對(duì)這種操作進(jìn)行簡(jiǎn)單模擬)。手部位置的追蹤和基礎(chǔ)的手勢(shì)已經(jīng)內(nèi)置在MRTK v2之中,只要使用默認(rèn)的配置制作的應(yīng)用,伸出雙手,我們就能看到有一雙虛擬的手完整的套在你的手上,并隨著你的手實(shí)時(shí)運(yùn)動(dòng)。

使用默認(rèn)的設(shè)置,我們就可以隨意的用手抓取近處的虛擬物體,如果物體較遠(yuǎn),還可以用手部伸出的射線(xiàn)來(lái)像光標(biāo)一樣選取。我們可以用手觸摸物體,用手抓,用手指捏,可以按、可以推、可以撥動(dòng)UI。如果你只是簡(jiǎn)單的想嘗試所有這些,甚至不用寫(xiě)一行代碼就可以實(shí)現(xiàn)。當(dāng)然了,如果要實(shí)現(xiàn)真正可用的功能,還是需要用代碼把這些功能整理到你的應(yīng)用之中。

值得一提的是,MRTK v2中提供了一個(gè)能夠讓人體驗(yàn)全部HoloLens2輸入方式和UI的示例場(chǎng)景,上手時(shí),可以?xún)?yōu)先考慮用它來(lái)進(jìn)行初次體驗(yàn)。

視線(xiàn)追蹤

視線(xiàn)追蹤也是這次設(shè)備帶來(lái)的重要新功能,設(shè)備可以追蹤使用者的眼睛所觀(guān)察的方向,可以真正做到一個(gè)眼神就知道你要做什么。通過(guò)MRTK v2提供的功能,我們能獲取使用者當(dāng)前眼鏡所注視的位置,可以用視線(xiàn)來(lái)選取物體,滾動(dòng)文本,甚至可以統(tǒng)計(jì)使用者視線(xiàn)聚焦的位置情況,以便更好的分析使用者的操作習(xí)慣。

但是,由于視線(xiàn)移動(dòng)非常靈活,過(guò)度使用視線(xiàn)追蹤有可能會(huì)造成使用者的困擾,產(chǎn)生大量違背使用者意圖的誤操作,因此官方建議只在合適的地方嘗試使用視線(xiàn)追蹤,并多加測(cè)試。

共享空間錨

做過(guò)多人協(xié)同的MR應(yīng)用的開(kāi)發(fā)者都知道,空間不能共享是一件多么痛苦的事情。當(dāng)我們有多臺(tái)MR設(shè)備需要在一個(gè)共同場(chǎng)景中同步時(shí),由于每一臺(tái)設(shè)備對(duì)空間的理解都不相同,我們往往需要逐個(gè)調(diào)整每一臺(tái)設(shè)備中的空間錨,才能讓這些設(shè)備中看到的畫(huà)面看起來(lái)在同一個(gè)位置。

微軟在HoloLens 1階段曾經(jīng)設(shè)計(jì)了一套API,能將空間信息序列化,并通過(guò)網(wǎng)絡(luò)傳輸給其他HoloLens,讓其他設(shè)備的空間與這臺(tái)設(shè)備共享。然而當(dāng)時(shí)的這一套機(jī)制實(shí)用性卻不強(qiáng)。一方面,空間信息序列化后過(guò)于龐大,經(jīng)常達(dá)到上百M(fèi)B的容量,網(wǎng)絡(luò)傳輸困難;另一方面,其他設(shè)備下載空間信息后,有很大概率無(wú)法和自身識(shí)別的空間進(jìn)行匹配,導(dǎo)致經(jīng)常不能使用。隨著HoloLens 2的到來(lái),微軟也發(fā)布了新Azure Spatial Mapping。

Azure Spatial Mapping可以讓不同的MR設(shè)備之間共享空間認(rèn)知,不止HoloLens之間分享,還可以涵蓋ARKit和ARCore。與之前不同,這次是直接將空間信息通過(guò)簡(jiǎn)單的REST API上傳Azure,由Azure管理并存儲(chǔ),其他端則是從Azure下載。我們?cè)赗edmond進(jìn)行了簡(jiǎn)單的測(cè)試,上傳下載的速度還是很快的,比之前應(yīng)該是做了大幅的優(yōu)化。世紀(jì)互聯(lián)版Azure據(jù)說(shuō)也要上線(xiàn)該服務(wù),尚不清楚國(guó)內(nèi)版性能會(huì)怎么樣。

另外,Azure Spatial Mapping還提供了一些附加的功能,例如可以累加式地添加空間錨,不必在一次運(yùn)行時(shí)完全添加,可以在以后打開(kāi)程序時(shí)再次添加;例如還可以在空間錨之間創(chuàng)建聯(lián)系,幫助使用者進(jìn)行尋路,獲取距離當(dāng)前空間錨最近的空間錨,等等。

有了Azure Spatial Mapping,我們就可以很容易地在不同的MR設(shè)備之間共享空間錨信息,多設(shè)備協(xié)同時(shí)的前期調(diào)校工作會(huì)變得更加簡(jiǎn)便。唯一的問(wèn)題在于,我們必須而且當(dāng)然要連上Azure公有云才能訪(fǎng)問(wèn)此服務(wù),在純內(nèi)網(wǎng)環(huán)境中就無(wú)法使用了,這時(shí)候還是需要自己寫(xiě)相應(yīng)的映射服務(wù)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6834

    瀏覽量

    123350
  • 開(kāi)發(fā)
    +關(guān)注

    關(guān)注

    0

    文章

    370

    瀏覽量

    40848
  • HoloLens 2
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    5522

原文標(biāo)題:【技術(shù)干貨】HoloLens 2開(kāi)發(fā)初窺

文章出處:【微信號(hào):vrtuoluo,微信公眾號(hào):VR陀螺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    開(kāi)發(fā)開(kāi)發(fā)了一款Hololens應(yīng)用 通過(guò)手勢(shì)和眼神來(lái)操控家電

    一位開(kāi)發(fā)開(kāi)發(fā)了一款Hololens應(yīng)用,該應(yīng)用用戶(hù)通過(guò)手勢(shì)和眼神來(lái)操控家電。
    發(fā)表于 04-17 15:57 ?2477次閱讀

    Styly開(kāi)發(fā)團(tuán)隊(duì)將時(shí)尚電子商務(wù)帶給HoloLens

    微軟HoloLens的這個(gè)新混合現(xiàn)實(shí)(MR)商業(yè)平臺(tái)是Psychic VR Lab與時(shí)裝公司chloma合作完成的。 蘇富比國(guó)際地產(chǎn)公司和Houzz等公司推出的增強(qiáng)現(xiàn)實(shí)(AR)應(yīng)用程序(如
    的頭像 發(fā)表于 04-06 12:01 ?5006次閱讀

    Mozilla的Firefox Reality瀏覽器將支持HoloLens 2

    設(shè)備、Oculus Go和谷歌Daydream View,以及Magic Leap One的早期開(kāi)發(fā)者預(yù)覽版。HoloLens 2的版本目前只是一個(gè)原型。
    發(fā)表于 02-26 09:27 ?725次閱讀

    微軟攜HoloLens 2亮相2019年世界移動(dòng)通信大會(huì)(MWC 2019)

    微軟攜HoloLens 2亮相2019MWC 今天微軟在MWC正式面向全球發(fā)布了HoloLens 2,同時(shí)為其準(zhǔn)備了一套全新的Azure Kinect DK,它是一款
    發(fā)表于 02-26 09:15 ?569次閱讀

    微軟在MWC發(fā)布了全新產(chǎn)品HoloLens 2

    昨天刷爆網(wǎng)絡(luò)的最強(qiáng)單品非HoloLens 2莫屬了,昨天在巴塞羅那舉行的2019 MWC世界移動(dòng)通信大會(huì)上,微軟發(fā)布了全新產(chǎn)品HoloLens 2,這款萬(wàn)眾矚目的產(chǎn)品一直備受期待,關(guān)于
    發(fā)表于 03-11 14:58 ?976次閱讀

    微軟賣(mài)的不是HoloLens 2,而是“云”。

    回顧HoloLens的發(fā)展,在其最初的原型,實(shí)際上是一款B端和C端的雙定位AR設(shè)備,這與HoloLens開(kāi)發(fā)團(tuán)隊(duì)不無(wú)關(guān)系。起初在團(tuán)隊(duì)建設(shè)上,該開(kāi)發(fā)團(tuán)隊(duì)就沿襲了Xbox項(xiàng)目中的核心成員
    的頭像 發(fā)表于 03-01 11:17 ?3228次閱讀

    微軟 HoloLens團(tuán)隊(duì)推出,針對(duì)企業(yè)使用的HoloLens 2產(chǎn)品

    恭喜Microsoft HoloLens團(tuán)隊(duì)推出了針對(duì)企業(yè)使用的HoloLens 2產(chǎn)品! HoloLens和RealWear HMT-1是相輔相成的兩款優(yōu)秀產(chǎn)品。
    發(fā)表于 03-07 16:57 ?868次閱讀

    HoloLens 2中文官方網(wǎng)站正式亮相

    近日,HoloLens 2 中文官網(wǎng)已正式上線(xiàn)了。現(xiàn)在,用戶(hù)可以直接訪(fǎng)問(wèn)https://www.microsoft.com/zh-cn/hololens/來(lái)獲得有關(guān)HoloLens
    的頭像 發(fā)表于 04-26 09:05 ?5957次閱讀

    微軟與Unity合作發(fā)布了HoloLens 2開(kāi)發(fā)

    微軟混合現(xiàn)實(shí)高級(jí)總監(jiān)馬特?弗萊肯斯坦在一份聲明中表示:“通過(guò)將HoloLens 2、Azure MR services和Unity平臺(tái)整合在一起,我們讓開(kāi)發(fā)者比以往任何時(shí)候都更容易開(kāi)始構(gòu)建推動(dòng)第三波計(jì)算浪潮的實(shí)時(shí)3D體驗(yàn)?!?/div>
    的頭像 發(fā)表于 05-07 09:52 ?2809次閱讀

    微軟HoloLens 2將是混合現(xiàn)實(shí)頭顯中的重大技術(shù)改進(jìn)

    HoloLens 2HoloLens1相比,手勢(shì)感覺(jué)要自然得多,眼動(dòng)追蹤的添加為用戶(hù)體驗(yàn)增加了新的交互性。
    發(fā)表于 11-25 09:39 ?703次閱讀

    微軟HoloLens 2 幕后的設(shè)計(jì)故事

    卡爾·萊德貝特(Carl Ledbetter)興奮到不能自已。這位負(fù)責(zé)Xbox游戲主機(jī)和HoloLens設(shè)計(jì)工作的總監(jiān)的心情十分雀躍,他在《快公司》記者馬克·威爾遜(Mark Wilson)的專(zhuān)訪(fǎng)中分享了微軟最新產(chǎn)品HoloLens 2
    發(fā)表于 07-18 10:15 ?1013次閱讀

    微軟HoloLens 2開(kāi)發(fā)版正式在美國(guó)上市:售價(jià)約23412元,總價(jià)值31773元

    早在 2019 年 5 月,微軟首次公布了 HoloLens 2 開(kāi)發(fā)版套裝。在宣布 1 年半之后,微軟今天宣布 HoloLens 2
    的頭像 發(fā)表于 11-03 18:00 ?3049次閱讀

    微軟在美國(guó)全面上市面向開(kāi)發(fā)人員的HoloLens2

    本文來(lái)自cnBeta 早在 2019 年 5 月,微軟就已經(jīng)宣布了面向開(kāi)發(fā)人員的 HoloLens 2 。然而直到一年半以后,它才終于在美國(guó)全面上市。此外微軟承諾在 2020 年底之前,將
    的頭像 發(fā)表于 11-06 14:57 ?2252次閱讀

    微軟混合現(xiàn)實(shí)HoloLens 2有哪些亮點(diǎn)

    小編說(shuō):虛擬與現(xiàn)實(shí)的邊界,如何輕松打破,HoloLens 2所構(gòu)建的奇趣數(shù)字空間,又將有哪些超級(jí)亮點(diǎn)呢?讓我們一起來(lái)看看吧~
    的頭像 發(fā)表于 01-25 10:37 ?2681次閱讀

    HoloLens 2將應(yīng)用在汽車(chē)上?微軟聯(lián)手大眾推動(dòng)該技術(shù)發(fā)展

    近日,微軟宣布其旗下產(chǎn)品HoloLens 2將新增移動(dòng)平臺(tái)功能,據(jù)了解,大眾汽車(chē)參與了這項(xiàng)功能的開(kāi)發(fā)。 微軟稱(chēng),新推出的移動(dòng)平臺(tái)功能解決了HoloLens設(shè)備傳感器混亂的問(wèn)題。大眾在使
    的頭像 發(fā)表于 05-06 17:46 ?1607次閱讀