王功利
摘要:針對虛擬寵物交互體驗不佳的問題,本文研究利用混合現(xiàn)實技術(shù)的相關(guān)應(yīng)用開發(fā)技術(shù)與方法。利用Unity3D引擎作為開發(fā)環(huán)境,創(chuàng)建基于HoloLens設(shè)備的虛擬寵物貓交互應(yīng)用,并在其中完成一些與寵物貓的簡單互動行為。該項目應(yīng)用目前處于研究階段,實驗測試表明該項目可以在未來投入到互動娛樂類的應(yīng)用推廣當(dāng)中,同時可以用于HoloLens設(shè)備應(yīng)用領(lǐng)域。
關(guān)鍵詞:混合現(xiàn)實技術(shù);HoloLens;虛擬交互
中圖分類號:TP391.9 文獻標(biāo)識碼:A 文章編號:1007-9416(2018)06-0172-01
1 引言
微軟公司研制的HoloLens全息眼鏡運用了混合現(xiàn)實技術(shù),它是一種對虛擬現(xiàn)實技術(shù)的拓展與改進,不僅結(jié)合虛擬現(xiàn)實技術(shù)的優(yōu)勢,而且克服VR設(shè)備的不足之處。其交互性與沉浸感要比虛擬現(xiàn)實帶來的效果更高。用戶在接觸真實世界的同時,也可接觸到虛擬的信息內(nèi)容,通過真實與虛擬產(chǎn)生的疊加效果,獲得更逼真的交互體驗[1]。如今在MR領(lǐng)域代表性的設(shè)備有HoloLens全息眼鏡、Magic Leap等等。HoloLens在游戲領(lǐng)域等應(yīng)用也逐步普及,吸引不少游戲玩家的注意[2]。虛擬現(xiàn)實展示手段和過去實物展示技術(shù)進行融合,用戶行走于虛擬與現(xiàn)實環(huán)境中間。從而可以優(yōu)化以往的靜態(tài)展示的信息傳遞的單調(diào)性,使交互更加自由[3]。
2 相關(guān)工作
HoloLens使用Windows10 Holographic操作系統(tǒng)。這種系統(tǒng)與計算機使用的Windows10系統(tǒng)具有通用的API接口和NT內(nèi)核。此外HoloLens增加了人機交互組件。如視線控制,手勢控制以及聲音控制等[4]。使用HoloLens運行測試只需連接設(shè)備和電腦,將HoloLens調(diào)節(jié)為開發(fā)者模式,并在微軟官網(wǎng)中注冊這臺實體設(shè)備即可。
3 算法
3.1 視線識別
視線在此也稱作為“凝視”,是用戶正在看到的某個位置中心。在場景中添加一個紅色圓環(huán)作為用戶視角中心,并固定它運行中與攝像機的相對位置,使得用戶無論看哪里,圓環(huán)始終保持中心位置。
在腳本中創(chuàng)建MeshRenderer,Update()功能中獲取用戶相機實時位置,測試時該位置應(yīng)與佩戴設(shè)備后用戶眼睛位置一致。獲取相機位置向量并反饋給RayCast。RayCast獲取相機朝向賦予到光標(biāo)圓環(huán)的位置中。圓環(huán)就會固定于用戶視線中心。用戶視線若與場景中某一物體“相交”,則圓環(huán)出現(xiàn)在物體表面,直觀地告訴用戶自己是否正在面向場景中的某個物體。
3.2 虛實環(huán)境結(jié)合
Unity初始化的相機屬性中,默認(rèn)背景如果不做調(diào)節(jié),在運行中背景也會投射到用戶的運行場景,與真實環(huán)境發(fā)生了疊加干擾,因此需要消除相機的背景。調(diào)節(jié)相機背景屬性為黑色,黑色場景將會變成透明的,從而達到虛擬物體與現(xiàn)實環(huán)境結(jié)合。
3.3 碰撞檢測
用戶觀察時,以相機位置作為原點,發(fā)出一條“射線”。如果射線被遮擋,就與第一個遮擋它的物體產(chǎn)生“碰撞”行為。RayCast中擊中參數(shù)值變?yōu)門rue,此時紅色圓環(huán)就會出現(xiàn),并且旋轉(zhuǎn)圓環(huán)使之與“碰撞”物體表面進行貼合。這樣既表示產(chǎn)生碰撞,又能告知用戶正在注視的位置在哪里。使碰撞結(jié)果可視化。
3.4 交互動作檢測
如果用戶要做出點擊手勢動作,需要將食指和大拇指進行觸碰,系統(tǒng)就會向這一瞬間用戶“注視”的物體發(fā)送指令。通過被選中的物體將要調(diào)用Onselect()方法,另一腳本中將會實例化OnSelect()方法,從而讓物體做出相應(yīng)動作。
4 測試與分析
4.1 測試環(huán)境
計算機開發(fā)環(huán)境:Windows 10,Visual Studio 2015,Unity5.5.2f1,8GB內(nèi)存。
測試用HoloLens全息眼鏡:Windows 10操作系統(tǒng),64GB內(nèi)存。
4.2 測試結(jié)果分析
用戶注視著貓的前方,紅色圓環(huán)會與根據(jù)貓附著的邊界球體的碰撞關(guān)系進行旋轉(zhuǎn),因此圓環(huán)在正前方顯現(xiàn),并且與貓的邊界體表面進行位置關(guān)系計算,旋轉(zhuǎn)一定的角度。對貓進行不同視角觀察,發(fā)現(xiàn)在以現(xiàn)實環(huán)境建立為空間坐標(biāo)系下,貓在其中有固定的空間坐標(biāo)。下圖為界面交互過程,用戶做出點擊動作,進行界面跳轉(zhuǎn),與貓進行互動等操作。圖中貓吃魚的動作是用戶“點擊”貓之后觸發(fā)貓的動作腳本,使得站立動作轉(zhuǎn)換成吃魚的動作。
5 結(jié)語
本文主要探討了基于HoloLens設(shè)備的混合現(xiàn)實寵物貓應(yīng)用的設(shè)計流程與關(guān)鍵功能的實現(xiàn)。首先準(zhǔn)備開發(fā)環(huán)境和相關(guān)SDK包,然后在Unity引擎下進行環(huán)境搭建與交互算法等腳本的編輯;最后在實體HoloLens設(shè)備上進行互動展示。上述實驗證明了利用HoloLens設(shè)備下的寵物互動行為。根據(jù)測試分析結(jié)果,證明本項目能夠有效實現(xiàn)具有趣味性的寵物貓交互。目前本項目仍在進一步研究,將會拓寬其交互功能與添加場景互動等環(huán)節(jié),繼續(xù)完善這個娛樂應(yīng)用。
參考文獻
[1]陳瀟瀟.淺談混合現(xiàn)實技術(shù)的發(fā)展趨勢[J].大眾文藝,2016,(15):264.
[2].微軟黑科技HoloLens 虛擬成像走進未來[J].信息技術(shù)與信息化,2015,(06):16.
[3]尹火嬌.數(shù)字科技館中混合現(xiàn)實技術(shù)的應(yīng)用[J].無線互聯(lián)科技,2016,(09):135-136+138.
[4]高韻.虛擬現(xiàn)實技術(shù)發(fā)展與啟示——以微軟HOLOLENS為例[J].互聯(lián)網(wǎng)經(jīng)濟,2017,(12):50-55.
Abstract:Aiming at the problem of virtual pet interaction experience, this paper studies the technology and method of application of hybrid reality technology. Using the Unity3d engine as a development environment, create virtual pet cat interactive applications based on HoloLens devices, and do some simple interactions with it. The application of the project is currently in the research phase, and the experimental results show that the project can be applied to the interactive entertainment class in the future, and it can be used in the field of HoloLens equipment application.
Key words:mixed reality technology; HoloLens; virtual interaction