Unity與Apple合作開發(fā)新功能,讓AR開發(fā)更容易
在游戲大作發(fā)布前,我們常在游戲廣告中看到“運用最新3D引擎打造”類似的字眼,也會時不時的在網(wǎng)絡(luò)評論中看到關(guān)于某游戲“舊瓶裝新酒”用了前作的老引擎之類的吐槽。那么引擎到底是什么呢?
首先,游戲引擎包括一個渲染引擎,讓程序員能夠把內(nèi)部繪制的2D圖像和3D網(wǎng)格圖適配在一起,從而制作出一個逼真的模型。之后,大多利用與一個或多個API重復(fù)利用處理器和顯卡性能。此外游戲引擎還提供一些物理碰撞、光照反射等等功能??偟膩碚f,游戲引擎就是一個合理編寫的程序框架。
對于VR游戲,目前運用最多的引擎也就是Unity3D和Unreal Engine 4了,而且這兩者對于AR也是相當支持。前些日子,Unity3D和Unreal Engine 4也是動作不斷,相繼推出新版本,更加優(yōu)化了對于VR/AR的開發(fā)。
Unity3D
上個月,伴隨著ARKit2.0的推出,Unity也與Apple合作,更新了其ARKit插件。更新后的Unity ARKit插件具備了及時訪問功能,即共享和持久性的AR體驗,也就是所謂的AR云了。開發(fā)人員可以使用ARWorldMap功能保存用戶環(huán)境的特征點,并且可以發(fā)送給其他用戶以建立多人游戲會話或由應(yīng)用程序加載來查看已保存的內(nèi)容。應(yīng)用程序可以使用與觀察到的環(huán)境相對應(yīng)的ARWorldMap中的要素點來將設(shè)備重新定向到其周圍環(huán)境。
ARKit 2.0使用一種名為AREnvironmentProbeAnchor的新錨點類型來建立了一個區(qū)域的環(huán)境地圖,可隨著時間的推移更新地圖,并使用機器學習來預(yù)測紋理和光照的變化。為此Unity添加了一個新參數(shù)來處理錨點和三個用于指定紋理的新值。
除此以外,Unity還在iPhone X應(yīng)用程序中啟用了舌頭和眼睛注視跟蹤參數(shù)
也正是乘著iPhone X TrueDepth攝像頭的一波東風,Unity推出了面部動畫的新工作流程。借助facial AR remote component,開發(fā)人員可以通過iPhone X上的TrueDepth攝像頭捕捉高質(zhì)量的實時動作,Unity提供52種混合形狀,來令表演者的面部表情與動畫角色的面部表情相匹配。這在一定程度上大大方便了動畫的制作。
同樣方便創(chuàng)作者的還有unity推出的3D游戲工具包Mars。無需編碼,通過元素的選擇就可以制作出一個簡單的AR游戲。
當然,Unity不光支持ARKit,對于ARCore也是同樣支持。而且Unity還致力于在二者之間構(gòu)建一座橋梁,打破水火不容的現(xiàn)狀,實現(xiàn)跨平臺兼容的愿望。于是AR Foundation應(yīng)運而生,AR FoundaTIon目前支持的AR功能包括表面平面檢測、深度數(shù)據(jù)點云、設(shè)備位置和方向跟蹤、內(nèi)容縮放、光線投射、錨定虛擬對象的參考點、渲染色調(diào)。它在ARKit和ARCore之間建立了一些共同點,讓開發(fā)人員更容易同時支持兩個平臺,從而也縮短了平臺間應(yīng)用發(fā)布與更新的時間差。