1. 程式人生 > >5分鐘使用Unity製作AR應用,結合EasyAR製作AR

5分鐘使用Unity製作AR應用,結合EasyAR製作AR

開發預覽Step 1:開發環境在本次的案例演示中,我使用的是unity5.5.1版本,EasyAR 為2.0.關於unity+Android 或unity+ios 環境的搭建,在後期會專門出一篇文章。Step 2:匯入SDK我們新建一個unity專案,命名為"HelloAR"

解壓之後,我們將"EasyAR_SDK_2.0.0_Basic.unitypackage"匯入到unity中

匯入之後,效果如圖:

Step 3:配置識別圖首先我們準備一張我們需要識別的圖片(格式最好為jpg),在這裡為了方便測試,我用一張身份證來識別,將這張圖片命名為"idback",比如:

然後我們在unity裡新建一個目錄,命名為"
StreamingAssets",然後將這張識別圖拖入到unity的該目錄下

在EasyAR 的開發配置中,直接將圖片拖入到unity中是一種比較常見的手段,我們也可以用json的方法來配置我們的專案開發,我們在 StreamingAssets 目錄下新建一個json檔案,命名為"targets",基本格式如下:{ "images" : [ { "image" : "idback.jpg", "name" : "idback", "size" : [8.56, 5.4], "uid" : "uid-string, should NOT duplicate", "meta" : "what ever string you like." } ]}對於json配置圖片,我們必要的兩個欄位是:
  • image ---- 匯入到unity中的識別圖名字+字尾格式
  • name ----識別圖名字
ps,如果我們想配置多張圖片資訊,比如我們還在unity中匯入了一張名為"argame00"的圖片,那麼我們就可以這樣配置json,以此類推:{ "images" : [ { "image" : "argame00.jpg", "name" : "argame" }, { "image" : "idback.jpg", "name" : "idback", "size" : [8.56, 5.4], "uid" : "uid-string, should NOT duplicate", "meta" : "what ever string you like." } ]}Step 4:獲取key

點選建立應用,填寫你的應用名字與打包移動平臺時必填的package name

比如這樣:HelloAR 是我的應用名,mars 是我的公司或團隊名,格式就是這樣

確定好後,我們可以檢視我們的Key

Step 5:匯入模型資源我們將我們準備好的模型資源匯入到unity中

匯入到unity後,可能會報錯,我們只需刪除"Standard Assets"就可以

到現在,我們就準備好了我們的模型資源

Step 6:開發我們的準備工作基本已經完成了,接下來我們刪除原有場景的"Main Camera",然後把我們的EasyAR Camera 拖到面板中

然後將我們從官網上申請的Key填入到"EasyAR_Startup" 中

然後我們把 ImageTarget 拖到面板中去

然後我們編輯掛在ImageTarget元件上的 "ImageTargetBehaviour" 指令碼(這段指令碼的功能主要是當捕捉到識別圖時控制模型的顯示與消失),指令碼主要內容如下:

接下來,我們填寫如下資訊

  • Path: 識別圖的路徑
  • Name:識別圖的名字
  • Size:識別圖的大小
對於Path 的配置,我們有兩種方法:一種是可以直接填寫識別圖名+字尾,另一種是填寫json,比如:

注意,我們一定要將Storage 的格式修改為Assets

關於Storage:

接著我們在 Imagetarget 元件下面建立我們是AR模型,我們將事先準備好的資源拖到其下面,如圖:

我們 reset 這個模型的Transform

然後使它的大小縮放為0.3,y軸旋轉270度,效果如圖:

最後我們先刪除沒用的Rigidbody 這個元件

Step 7:測試我們Build Setting,點選Player Settings

我們填寫好資訊,注意Compang Name 與我們申請key時的公司或團隊名相同(比如我申請時填的是:mars),Product Name 也要和我們申請key時填的應用名相同(本次的專案演示為:HelloAR)

我們的Bundle Identifier 也要修改為

最後是最關鍵的一部分:我們的Graphics API 使用的是 OpenGLES2

Step 8:開發小技巧在開發AR App中,我們為了高效地進行,沒有必要這麼基礎的去配置EasyAR 開發環境,常常是下載好EasyAR 2.0 samples,直接使用裡邊的HelloAR 工程,這樣可以很方便的快速的搭建AR開發環境,事半功倍。

經測試,新手要注意一下幾點:

easyar申請KEY時,應用名就是你釋出安卓後的儲存的APK名稱,不一致出錯;

                            ID就是你釋出安卓時的域名,要一致,然後域名中間的名字就是company name名字,product name就是應用名

ImageTarget元件上的 "ImageTargetBehaviour" 指令碼什麼都不要寫

ImageTarget 的Size要設定,1或者2