【Unity】Unity中AR Foundation的使用


前段時間通過Unity 3d打包測試對比ARCore與ARKit環境探針的效果的過程中,在Google AR Core官網下載到了ARCore for Unity SDK,但是在蘋果官網卻沒有找到ARKit for Unity SDK。於是我想在Unity AssetStore也許能找到,結果也是沒有,經過多方查詢才知道,原來Unity AssetStore早在2018年就下線了ARkit,Unity自己構建了一個AR開發平台,這就是AR Foundation。

什么是AR Foundation?

AR原來的開發過程 - 3DCAT實時渲染雲平台

在AR Foundation誕生之前,如果我們需要開發一個多平台的AR應用,會使用 ARCore XR Plugin 開發一個Android設備版本,使用 ARKit XR Plugin 開發一個iOS設備版本。由於底層API的不同,這樣我們就需要同時維護多份代碼,這無疑增加了我們工作量和開發成本。因此Unity利用其跨平台的優勢,開發了一個與平台無關的AR開發工具包,Unity將這個AR開發工具包命名為“AR Foundation”。

AR Foundation本身並沒有實現任何AR功能,而是定義了一個多平台API。AR Foundation這個平台架構於各平台AR SDK之上,對各個平台的AR SDK進行了二次封裝,其目的就是利用Unity的跨平台能力構建一種與平台無關的AR開發環境。目前AR Foundation包含的AR SDK有ARCore、ARKit、Magic Leap、Hololens,相信在后續AR Foundation會兼容更多的主流AR SDK。在進行開發時,用戶可根據自己項目需求選擇合適的底層SDK版本。

AR Foundation簡化原先AR開發過程 - 3DCAT實時渲染雲平台

AR Foundation與ARCore、ARKit都正處於快速發展中,ARCore基本保持每兩個月進行一次更新頻率,不過AR Foundation功能的實現要比底層的原生API稍晚一些。下表展示了AR Foundation中ARCore、ARKit、Magic Leap、Hololens功能對比:

AR Foundation中ARCore、ARKit、Magic Leap、Hololens功能對比

利用AR foundation打包Android與ios的流程:

下面來講一下利用AR Foundation來打包到Android與ios的基本流程:

利用AR Foundation來打包到Android與ios的基本流程

我用的是Unity版本是2019.4.14,通過Unity Hub下載把Android與ios打包必須的一些環境都給裝上了,后續就不用單獨就配置了。

Android配置流程:

1.Unity主窗口Windows->PackageManager安裝AR Foundation與ARCore XR Plugins(它們版本得相同);

2.Edit→ProjectSetting→XR Plugins-in Management→Plug-in Providers→勾選ARCore;

3.Edit→ProjectSetting→Player→othersetting,在Other Setting選項卡中取消勾選 Multithreaded Rendering(多線程渲染),最后還要刪除Vulkan,因為Android不支持Vulkan;

4.設置與ARCore兼容的Android最低版本,找到“Minimun API level”選項,點擊其下拉菜單,選擇“Android7.0‘nougat’(API level 24)”或以上。

AR foundation的Android配置流程 - 3DCAT實時渲染雲平台

iOS配置流程:

  1. Unity主窗口Windows→Package Manager安裝AR Foundation與ARKit XR Plugins(它們版本得相同);

  2. Edit→Project Setting→XR Plugins-in Management→Plug-in Providers→勾選ARKit;

  3. 我們設置Target SDK為Device SDK。設置最低iOS系統版本為11.0,因為支持ARKit的最低iOS版本是11.0。最后設置處理器架構為ARM64。

AR foundation的IOS配置流程 - 3DCAT實時渲染雲平台

完成以上基礎設置,就可以場景中添加AR基礎組件,在Hierarchy窗口中的空白處點擊鼠標右鍵,在彈出的級聯菜單中依次選擇XR→AR Session和XR→AR Session Origin,新建這兩個AR基礎組件。內容可根據自己需求來增加,不清楚如何開發的朋友可以先在GitHub上下載相關示例,附鏈接:github.com/Unity-Technologies/arfoundation-samples

ARCore打包到安卓時,會報一個Gradle版本不對的錯誤,具體解決方法可參照: developers.google.com/ar/develop/unity/android-11-build

ARKit打包出來是一個Xcode工程,我們需要在Xcode中打包發布到真機,這個環節是要用到蘋果電腦,而且對系統版本和Xcode版本是有要求的,詳細的操作步驟可參照: www.doulipark.com/2019/1122.html

通過AR Foundation開發后,如果想要讓不同設備的用戶直接通過URL訪問體驗,可以將應用上傳到3DCAT實時渲染雲平台,用戶體驗AR應用不用下載跟安裝APP,任何時間地點,任何設備都可以直接訪問,在線體驗3D應用。3DCAT實時渲染雲平台是一個三維應用的托管運行平台,在雲端提供強大的圖形實時渲染計算服務,平台配備彈性GPU資源集群,支持自動負載均衡和伸縮擴容,支持海量用戶同時安全訪問應用。

3DCAT是集實時渲染、實時3D可視化、像素流送虛擬仿真等相關技術服務於一身的實時渲染雲平台。利用雲端的海量GPU算力處理繁重的圖像渲染計算並串流同步輸出到終端設備,從而實現終端設備的輕量化,讓高質量三維圖形應用變得無處不在。

了解更多實時渲染相關資訊,體驗目前3DCAT實時渲染平台在一些行業已經應用的demo,歡迎訪問3DCAT實時渲染雲平台https://www.3dcat.live

以上就是3DCAT實時渲染雲平台整理發布的《Unity中AR Foundation的使用》一文。如需轉載,請注明出處及鏈接:https://www.3dcat.live/news/unity-ar-foundation

了解更多虛擬仿真相關資訊,請關注3DCAT實時渲染雲平台https://www.3dcat.live

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM