Unity對跨平臺解決方案AR Foundation進行了重大更新,其最新版本增加支援ARKit中可提供多重使用者AR體驗的ARWorldMap功能,另外,新的輕量級渲染工作管線讓開發者能更簡單的自定義渲染工作。

Unity在AR的發展走得很前面,很早就支援了Google的ARCore與蘋果的ARKit,而AR Foundation則是Unity用來提供ARCore、ARKit和頭戴裝置等未來其他平臺的一組核心功能通用API,開發人員只要使用單一程式碼庫,就能創建iOS和Android的AR應用程式。AR Foundation透過套件管理器和Unity整合,因此開發者很容易能將AR Foundation加入到新專案中。

AR Foundation在第一個版本中,提供了基本的AR功能,包括平面偵測、裝置位置、方向追蹤與光線測量等,而Unity現在又為AR Foundation和其他XR套件加入重大更新。新版本AR Foundation開始支援輕量級渲染工作管線(Lightweight Render Pipeline,LWRP),開發者可以於ARCore和ARKit應用程式建置時,在新的著色器圖(Shader Graph)中創建新的著色器。由於Unity加入了ARFoundationRendererAsset概念,開發者現可以控制自定義的ARFoundationRenderer,更加良好的控制渲染工作。也由於新加入的著色器圖,編輯器現能提供以視覺化節點編輯特效的功能。

這個版本的另一個重大更新,就是支援ARKit的ARWorldMap,提供多重使用者與持久性的AR體驗。ARWorldMap能讓多個使用者同時使用不同裝置,在同一個場景以自己的角度瀏覽虛擬世界,並與其他人互動,另外,ARWorldMap還提供,在某個時間點儲存和重新創建持久性AR體驗。AR Foundation也支援了ARKit的臉部追蹤功能,開發者可以用來追蹤臉部,或是存取多重臉部特徵的混合形狀。

而現在AR Foundation也更新了相機圖像API,讓開發者具有CPU上相機圖像低階存取能力,以及最佳化轉換工具,用來將圖像轉成RGB或是灰階,這能使想要自定義電腦視覺演算法的開發人員,更自由地進行圖像處理。

AR Foundation的目標是要提供一個獨立於平臺的腳本API與MonoBehaviours,方便開發者創建倚賴於ARCore和ARKit共有核心功能的應用程式,讓開發者只要進行一次開發工作,就能把應用程式部署到iOS和Android兩種裝置上,而不需要任何額外修改。但是AR Foundation尚未實作ARKit和ARCore的所有功能,因此當開發者的應用程式相依於AR Foundation中尚未包含的特定功能,則可以單獨使用特定的SDK。當然開發者只針對單一平臺,Android可以使用Google為Unity維護的SDK,iOS則可以使用Unity的ARKit插件。


Advertisement

更多 iThome相關內容