Magic Leap開發SDK、引擎揭秘:支持8種手勢、協同工作
想要了解更多的VR遊戲資訊 一定要關注VR陀螺!
編譯/VR陀螺 雲吞、ZJ
Magic Leap在本周終於在Magic Leap"s Creator埠上發布了自己的Lumin SDK文件,我們也有機會了解到設備更多的功能,以及如何哪些軟體是可以使用的。
以下就是對Lumin OS、SDK和開發者埠的一些解讀。
Lumin OS
我們知道Magic Leap的操作系統被稱作Lumin。這個系統是基於Linux和安卓開源項目所打造的。應用將會基於Magic Leap自己的Lumin Runtime引擎打造,同時在Lumin上運行。除了Lumin Runtime之外,尋常的3D引擎如Unity和UE4引擎也都可以用來開發Magic Leap內容。
Magic Leap軟體棧
Magic Leap One軟體棧的下一層級是OS服務層。在這一層,利用OS Core我們會進入更高層次。例如,輸入管理、通信管理(藍牙和Wi-Fi)以及電源管理等功能都在此進行處理。
在這一層,Magic Leap也包含了該公司名為Perception的服務。這些子系統處理一些更複雜的輸入,例如用戶和環境感應,以及圖形渲染管道,其中包括Magic Leap實現非同步時間扭曲(ATW)。
使用可移植操作系統介面(POSIX)API標準,平台API層作為開發人員與空間計算功能之間的看門人,具有用戶設置許可權系統。這一層還包括常用於Android OS中作為進程間的通信系統的Binder框架,允許應用程序相交互(HoloLens在這一點上尤其缺失這一功能)。
Lumin Runtime引擎
目前,很多基於其他引擎打造的沉浸式應用都必須獨立運行,但Lumin Runtime可以讓應用在運行的同時,也能夠進行交互,展示出一種「單一的、連續性的體驗」。開發者可以獲取13種平台上的API來打造不同的交互,包括場景圖(用於確定空間中的坐標和等級)、碰撞物理效果、手勢、實時立體計算技術(用於渲染物體)、控制、光影以及在現實世界中的遮蔽效果。這種單場景中多應用的形式,聽上去和2016年的「Waking Up with Mixed Reality」的demo很相似。
在某一時刻,我們現在知道的Windows計算機是由MS-DOS操作系統組成的,Windows是一個在操作系統之上運行的圖形用戶界面(GUI),因此GUI+可能是查看關於Lumin Runtime是什麼的簡單方法。但Lumin Runtime除了提供簡單的GUI外,還提供了一些更重要的功能。
跳出來看,Magic Leap One使用客戶端/伺服器模式,允許多個設備共享應用程序。根據文檔中的內容,這看起來像是自動處理的。如果是這樣,它將帶來能控制基礎元素共享或不共享的問題,這對於那些已經在HoloLens中開發出共享體驗的人來說就像是一片新鮮空氣一般。
Lumin Runtime的其他基礎元素:
帶有材質的3D模型和骨骼3D模型動畫
2D圖片精靈動畫
用於空間計算的高保真空間化文本渲染
2D和聲場音頻
2D和立體視頻
剛體碰撞物理
實時粒子特效
輸入事件和觸覺控制
手勢
語音識別
時空間計算技術,用於渲染對象、照明、陰影和真實世界的遮擋
看起來,Lumin Runtime旨在提供類似Unreal或Unity 那樣的3D引擎所能提供的設施,包括諸如Lumin Editor和UI Toolkit等。也就是說,Lumin Runtime層也支持這兩種引擎。
Lumin Runtime應用可以平行運作,也可以協同工作,而Unreal和Unity應用只能夠以獨立的應用運行,因為它們會對設備有獨立的控制。當然,它們在其他平台也是以這種形式運作的,因此不是什麼新鮮事了。但開發者們肯定還是非常期待能夠做出一些改變的。
從這方面來看,Magic Leap的確有對Lumin OS和一系列軟體做出深思熟慮的設計。但是要到我們真正拿到設備的的時候才能知曉能做和不能做的事。
平台API
SDK發布筆記中,包含了多款驚人的API。眼球追蹤API能夠用於確定用戶注視點的方向、眼部的中央,還可以監測眨眼的動作。這一SDK同時支持硬體遮蔽,擁有一個交互界面來給平台提供深度信息。
頭部姿勢
Magic Leap One(ML1)能夠整合其一系列感測器所收集的數據,同時還有用戶視覺上的觀察。如果用戶的視野被昏暗的環境或者被遮擋的相機所影響的話,ML1會自動啟用陀螺儀追蹤,直到系統重新收集足夠的視覺數據。
圖像追蹤
ML1可以持續的捕捉視覺數據來建造一個周圍環境的地圖,而且在回到之前已經建模的環境時,會自動識別並且給出之前的內容。所以在房間中玩追逐小機器人的遊戲時,它們會停留在你之前看到過它們的地方。
這項技術聽上去和Magic Leap工程師此前發布的研究非常相似,使用了一對神經網路系統來給圖像上確定「SLAM-ready」的點,可以用於追蹤。具體形式如下圖所示。
手勢
Lumin SDK支持8種不同的手勢。微軟HoloLens支持3種手勢(可以通過Mixed Reality Toolkit實現第4種),而Meta 2可以實現7種不同的抓取手勢。
鑒於Magic Leap最近申請了一個翻譯手語的專利,我們能夠期待接下來還會在開發者平台上看到更多的手勢識別功能。
聲場音頻
就在上周,Magic Leap申請了一份立體聲專利,聽上去正是ML1上具備的聲場音頻功能。
現在我們已經確定,公司這項獨家的技術將會向開發者開放。基於聲場音頻技術的立體聲方案或許會在不久之後就登陸Unity和UE4引擎,同時聲場API也很快能夠被原生C++應用和公司自己的Lumin Runtime引擎所調用。除此之外,Magic Leap也有計劃支持更多的中間件,包括Wwise和FMOD Studio,大概在GDC結束之後就會實現。同時,開發者還可以將谷歌Resonance Audio項目的SDK進行調用。
光照
Lumin OS能夠實現環繞式光線追蹤。應用可以對一個場景增加光線,但是不能在沒有光的情況下渲染。儘管如此,開發者可以用明亮的色彩來對沖昏暗的色彩,來製造出昏暗的感覺。同時,由於物體不會投射陰影,開發者需要從上方照亮物體。Lumin同時支持虛擬物體的自我陰影。
接近裁切平面
Magic Leap官方表示,距離用戶一臂遠的內容能夠實現最佳的體驗,同時也提醒開發者不要長時間將虛擬物體置於用戶30厘米的範圍之內。公司還鼓勵開發者在用戶過於接近虛擬物體的時候,讓這些物體「逐漸消失」,而不是突然的讓景象消失。
總的來說,為Magic Leap進行開發對於習慣於開發Unity的的人來說並沒有太大不同,只不過增加了一些額外的功能,比如眼球追蹤。我們很期待開發者們能夠用Lumin Runtime引擎做出來什麼樣的作品。
※32平米的無限大空間!這個90後高顏值海歸團隊做到了
※CES第四日,Realmax展示AR新頭顯;HTC Vive Pro或已通過美國FCC認證
TAG:VR陀螺 |