?
Hololens開發(fā)環(huán)境
Hololens也是屬于Win10通用應(yīng)用家族的一員。對于Hololens的開發(fā)毋庸置疑是Win10的開發(fā),大家從開發(fā)環(huán)境上可以看出要裝Win10的SDK,從開發(fā)工具上來說推薦大家使用新一代的集成編譯環(huán)境Visual Studio 2017。
?
當(dāng)然你需要去購買Hololens設(shè)備。不管有沒有設(shè)備,都要向大家推薦安裝Hololens的模擬器。對于第三方的開發(fā)插件來說,我們是推薦大家使用Unity。從5.5版本開始,Unity已經(jīng)把Hololens列入到正式版本當(dāng)中。
?
除了Unity以外還可以安裝Vuforia。Vuforia從6.1版本開始支持Hololens平臺。大家如果希望在Hololens上實現(xiàn)手機(jī)AR的功能,大家可以直接使用Vuforia6.1的版本來開發(fā)。
使用Hololens開發(fā)大概會遇到哪些問題?它的開發(fā)包括了哪些部分?
一般來說一個Hololens的程序會包含材質(zhì)、模型、貼圖、腳本等。一個3D的圖形程序不外乎也是這樣幾個部分,這跟普通的3D程序沒有什么區(qū)別。
?

?
因為Hololens設(shè)備的特殊性,有六樣?xùn)|西是需要大家做特殊的處理的,前面三個是跟Hololens獨(dú)特的輸入相關(guān)的。在Hololens的應(yīng)用程序中需要去處理凝視操作、手勢操作、語音輸入。另外三個是跟空間感知相關(guān)的,你需要去識別空間錨標(biāo)的位置、去處理空間映射、空間聲音。
?
這六部分是Hololens程序跟其他程序所不同的部分。中間這六塊內(nèi)容是HoloToolkit。這是微軟為了方便大家開發(fā)Hololens應(yīng)用而開源的Unity插件。大家可以到微軟官方的開源網(wǎng)址上找到并且下載下來。可以直接使用HoloToolkit來開發(fā)HoloLens應(yīng)用。
?
重點說一下用Unity開發(fā)Hololens。開發(fā)的過程和開發(fā)3D應(yīng)用區(qū)別不是太大,需要注意的是有一些具體設(shè)置。
?

?
近裁面是0.85,為什么要做這樣的設(shè)計呢?普通的是0.3米,Hololens推薦大家是設(shè)置為0.85。原因是由于Hololens有一個最基本的動作,Airtap。大家可以看一下手臂抬起來從肩到前方大約就是0.85的長度,所以建議不要把畫面呈現(xiàn)在手指的近處,這樣看上去效果不是太好。
?
Hololens是一個手機(jī)性能設(shè)備,渲染能力不是太強(qiáng),所以在Unity里面建議大家把工程質(zhì)量選項目設(shè)置成最快。還需要設(shè)置Win10的Capability選項。上方是構(gòu)建選項,這跟普通的Windows 10的選項是一樣的。下方有一個叫UWP Build Type,在這里推薦大家使用D3D,一般來說Hololens里面不會整合Windows 10的控件,所以大家直接選D3D,保證它的渲染效果是最好。
?
因為我接觸Hololens的開發(fā)者比較多,所以大家對Hololens的開發(fā)提出過不少問題,其中比較尖銳的就兩個問題。
?
第一個問題是性能問題,也就是性能不足的問題,Hololens不足以支撐非常復(fù)雜的3D圖形的渲染,這里給大家提供一個叫Simplygon的軟件。
?

?
這個工具最主要的功能是能夠幫你自動地生成LOD的模型以及做材質(zhì)的整合。而且它不管是虛幻還是Unity都整合的非常好。如果你不喜歡它內(nèi)制的一些設(shè)定,它也提供了非常豐富的API給大家做定制。
?
使用Simplygon有兩種方式,一種是到官網(wǎng)上下載,另一種是直接到Unity的插件商店里面搜Simplygon下載就可以了。
?
第二個問題是定位漂移的問題。Hololens是通過激光束定位的,所以它有時候會受光線的影響,光線不同的話,放的空間的錨標(biāo)在位置上會有偏移。
?
如何解決物體在Hololens里面會產(chǎn)生漂移的問題呢?大家可以發(fā)揮一下Vuforia的功能。如果我要定位某項物體的話,可以在實物的物品上放一些非常簡單的特殊圖片,利用Vuforia這個工具,在Hololens里掃描特別的圖片以后,通過Vuforia可以把物體非常好地定位在原來的地方,避免物體在Hololens里面產(chǎn)生漂移的狀態(tài)。
?
流程是這樣,第一把Vuforia和Hololens的主場景進(jìn)行關(guān)聯(lián)。下面有一個配置選項。Vuforia從6.1版本開始有專門針對Hololens的配置,所以在這邊選擇Hololens,就做這樣兩步就OK了,最后把Extended Tracking勾選一下,選的作用是可以把Vuforia里面對物體定位的三維坐標(biāo)數(shù)據(jù)和Hololens的空間坐標(biāo)系數(shù)據(jù)自動關(guān)聯(lián)起來。