How to make a Marker-based Augmented Reality App with Unity and Vuforia
朱亞超, 廣西科技大學數字媒體技術教研室,2017-6-5
參考文獻:https://library.vuforia.com/articles/Solution/Getting-Started-with-Vuforia-for-Unity-Development?
1. 準備工作
1.1 下載和安裝Unity
本例,使用Unity5.6,下載地址?:https://store.unity.com/download?ref=personal
安裝完畢后,新建一個3D項目(命名為AR),在Projects中,新建以“_Scenes”、“Scripts”和“Prefabs”命名的文件夾。并將場景保存在“_Scenes”文件下,命名為"Main"。
1.2 下載Vuforia? for Unity
本例,使用Vuforia for Unity 6.2(SDK名字為:vuforia-unity-6-2-10.unitypackage),下載地址?:https://developer.vuforia.com/downloads/sdk
1.3下載圖片和模型
圖片,用于標記。本例,使用100元人民幣,下載地址?:http://s1.trueart.com/20111010/123840186.jpg
動畫模型,在Unity Asset Store中搜索和下載一個免費模型,并將其導入本AR項目中。本例,使用HH-65C Dauphin模型(直升機,Unity Asset Store中可下),下載地址?:https://www.assetstore.unity3d.com/en/#!/content/8128
2.配置Vuforia
2.1 注冊Vuforia,獲取授權碼(License Key)
使用郵箱地址,注冊開發賬號,地址為:https://developer.vuforia.com/user/register
檢查郵件,激活Vfuoria賬號。登錄Vuforia,點擊“Develop”,進入授權碼管理頁面(License Manager,地址為?:https://developer.vuforia.com/targetmanager/licenseManager/licenseListing),點擊“Add Licenses Key”,選擇開發“Development”并給出你的App的名字,點擊下一步"Next",勾選確認協議后,點擊確認“Confirm”后,Vuforia生成了本App的License Key。點擊App名字,進入License Key頁面,復制這個License Key。
2.2 上傳標記圖片,下載數據庫
登錄Vuforia,點擊“Develop”,進入目標管理頁面(Target Manager,地址為?:https://developer.vuforia.com/targetmanager/project/checkDeviceProjectsCreated?dataRequestedForUserId=),點擊添加數據庫“Add Database”,指定數據庫名字,選擇設備“Device”。創建完成后,點擊你的數據庫名字,進入添加目標頁面,點擊添加目標“Add Target”,在類型“Type”欄中,選擇單個圖片“Single Image”;在文件“File ”欄,使用瀏覽“Browse”,在本機找到1.3節下載的100元人民幣圖片的存放路徑;在寬度“WIdth”欄,寫入“1”;在名字“Name”欄中,鍵入或使用默認的文件名(這里使用100作為文件名)。然后點擊添加“Add”。
圖片上傳完畢后,在同一頁面,勾選文件名后,點擊下載數據庫“Download Database”,然后選擇“Unity Editor”,點擊下載“Download”即可。
2.3 在Unity中配置Vuforia
在Unity中導入1.2節下載的SDK安裝包“Vuforia-Unity-6-2-10.unitypackage”,Unity中,借助于工具欄“Assets > Import Package > Custom Package ”,然后瀏覽和定位該SDK包的位置,然后選擇導入所有文件“All ”,并選擇導入“Import”即可。
導入成功后,首先從Project視圖中(Vuforia>Prefabs>ARCamera),將“ARCamera”拖入Hierarchy ,并將Hierarchy中的Main Camera刪除。然后,從Project中(Vuforia>Prefabs>ImageCamera),將“ImageTarget”拖入Hierarchy中。
在Hierarchy視圖中,選中ARCamera,在Inspector視圖中找到“Vuforia Behaviour (Script)”組件中,點擊打開Vuforia配置項“Open Vuforia configuration”,將前面復制的授權碼,粘貼到App License Key中去。
在Unity中導入導入2.2節下載的數據庫安裝包“100.unitypackage”,Unity中,借助于工具欄“Assets > Import Package > Custom Package ”,然后瀏覽和定位該SDK包的位置,然后選擇導入所有文件“All ”,并選擇導入“Import”即可。
導入成功后,首先從Hierarchy視圖中選中ImageTarget,在Inspector視圖中,找到“Image Target Behavior(Script)”組件,設置“Database”為“100”后,其他缺失項,則會被自動賦值。
3.原型與測試
如果以上步驟成功完成,那么請點擊播放按鈕,進入播放模式,進行測試。如果計算機安裝有攝像頭,則播放模式啟動攝像頭。雖然啥都沒有,但是AR開發的環境,已經配置成功。
在Project視圖中,找到1.3節下載和導入的直升機模型(AEgis_Technologies > HH-65C_Dauphin_USCG > HH-65C_Dauphin_USG_Hul2XHi_GearDN),將其拖入到Hierarchy視圖,并作為ImageTarget的孩子對象(操作技巧是,拖動直升機模型到Hierarchy的時候,覆蓋ImageTarget,等待其變為藍色,然后釋放鼠標)。
再次進入播放模式,進行測試。拿一張100元的人民幣,將其與1.3節下載的圖案一樣的面,對準攝像頭,保持不動一段時間(幾秒鐘),當看到虛擬的直升機停在100元人民幣上,即表示開發原型測試成功。
4.原型改進
5.發布
參考文獻