搞趣網:ChinaJoy 2017 | 使用Unity開發坦克AR詳解
在ChinaJoy 2017的Unity展位上,5分鐘使用Unity製作AR項目吸引了很多策劃、美術以及從未接觸過AR開發的程序員們,於現場感受了Unity結合Vuforia的開發魅力。今天這篇文章將為大家分享Unity展位坦克AR項目的詳細開發過程。
請注意,本文需要您具備基本的Unity知識,了解Unity腳本、組件、檢視窗口、層級窗口等內容。請點擊【閱讀原文】下載本文所需的資源文件。
構建場景
在Unity中新建場景,刪除Directional Light組件。然後將Project > Prefabs下的Sandbox對象拖拽至層級窗口,Sandbox對象本身帶有光照組件。確保在檢視窗口中將Sanbox > Ground > GroundPlane的Layer設置為Ground。
依次點擊Windo > Lighting > Settings打開光照設置界面,取消勾選實時GI、烘焙GI以及Auto Generate。
在Edit > Project ettings > Quality中將Shadow Distance設為300,以便沙盤陰影更加明顯。
加入AR
從Vuforia官網下載最新的vuforia-unity-6-2-10.unitypackage插件並導入項目,將Vuforia > Prefabs文件夾下的ARCamera預製件拖拽至層級視圖,點擊設置在Vuforia官網申請的License Key。如果不了解此處的步驟,請查閱《5分鐘使用Unity製作AR應用》。
將Vuforia > Prefabs文件夾下的ImageTarget預製件拖拽至層級窗口,添加圖像識別目標。將在Vuforia官網創建的目標資料庫下載後導入Unity,在檢視窗口中設置該ImageTarget的資料庫。
再次打開ARCamera的配置,勾選Load Database與Active,以載入資料庫文件。
將場景中的Sandbox拖拽至ImageTarget下方成為其子對象,將Sandbox稍微向上移動,位於ImageTarget上方。選中Sandbox後將其設為靜態對象,打開Window > Navigation > Bake, 將Agent Radius的值設為1.4,將Max Slope設為20,以避免角落部分生成Navmesh,設置完畢後點擊Bake烘焙網格。
添加菜單
在層級窗口新建GameObject命名為Placement Manager,將Prefabs > VFX文件夾下的Arrows預製件拖拽至其下方作為子對象,將Scripts文件夾下的PlacementManager腳本綁定到Placement Manager遊戲對象。該腳本用於將玩家在菜單選中的可放置對象擺放到沙盤。將腳本的Main Camera屬性設為ARCamera下的相機,What is Ground屬性設為Ground,Sandbox設為層級窗口的Sandbox。
將Prefabs > UI文件夾下的HUD拖拽至層級窗口,選中子對象Left Column 與Right Colum下方的所有圖片,在檢視窗口中為所有圖片添加Selection Image腳本,然後單獨為各腳本的Selectable Prefab屬性設置對應的預製件。
添加多個目標識別
可以在場景中添加多個ImageTarget來實現多目標識別,再次拖拽ImageTarget預製件至層級窗口,為其設置資料庫文件,並選擇其它的識別圖像。根據需求設置識別圖像的寬高,這裡均為75。
為新的ImageTarget添加新的目標對象,根據需求設置目標對象的縮放。這裡選擇將Building1拖拽至新ImageTarget下方。打開ARCamera配置文件,將Max Simultaneous Trakced Images屬性設為2,並將World Cnter Mode改為SPECIFIC_TARGET。這樣就可以同時追蹤2個識別圖像。
到此我們為時5分鐘的坦克AR項目就完成了,最後運行效果如下:
結語
使用Unity與Vuforia SDK開發AR應用並不複雜,即便從未接觸過的初學者也能在短時間內快速上手,大家可以訪問Unity官方中文社區(unitychina.cn)獲取坦克AR項目資源,自己動手實現掌中坦克。
5分鐘使用Unity製作AR應用
Unity內置Vuforia,助力開發AR應用
Unity結合Vuforia開發AR應用如何識別各種目標?
Unity發布實驗預覽版,支持為macOS開發VR及AR內容
使用Unity開發AR遊戲《AR Dragons》經驗分享
※神都夜行錄手游新手FAQ匯總
※搞趣網:一組漫畫就懂怎麼玩《野蠻人大作戰》
TAG:搞趣網 |
※Unite Beijing2018落幕:看Unity如何詮釋開發者至上
※《Wands》開發商Cortopia Group募集140萬美元,將著重開發AR遊戲
※Skylight AR開發商Upskill宣布獲得1720萬美元投資
※Python開發者必知的13個Python GUI庫
※PowerVR開發工具和SDK 2018 Release1正式發布!
※python開發學習:Python 3 VS Python 2
※Android開發學習-Day17-19 多線程&Service
※Google I/O 開發者大會:Android Things 1.0問世
※Stack Overflow2018開發者調查:Linux比Windows更受歡迎
※Resolution Games開發《憤怒的小鳥FPS》,融資1300多萬美金
※國內開發iOS-11.4 beta不完美越獄工具:目前僅支持iPhone 5s
※微軟宣布Visual Studio 2019開發工具
※3.30 VR掃描:Magic Leap One已向部分開發者發貨;蘋果發布iOS 11.3系統,支持ARKit 1.5
※Unity升級引擎推動開發大眾化 確認參展2018 ChinaJoy BTOB
※Kite製藥31.5億美元結盟Sangamo!開發下一代CAR-T療法
※開發者公布UEFI:可讓Lumia設備裝Win 10 on ARM
※開發人員表示Lumia 950 XL上運行Windows 10 ARM是可能的
※Office 365 應用開發的.NET Core 模板庫
※《Nginx完全開發指南:使用C、C+和OpenResty》
※開發者在Lumia 950原型機上安裝Windows 10 ARM64