?
實現功能:用手機掃描一個圖片,然后會出現一個AR物體,當然這物體是你自己設置的模型。
首先說如何制作一個AR的APP需要準備什么,easy ar這個插件,我用的版本是2.2.0的;unity我用的是unity2018.2.3的;
?
在做項目之前,要去easyar的官網注冊一個賬號,之后去開發中心,添加一個SDK的key,會自動獲取到一個sdk的license key。這個很重要,之后會用到的。
?
![如何用Unity制作AR程序](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008131943.png)
?
當然這個名字是有講究的,和unity打包時候那里的公司名字一樣,如上圖中
?
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008132240.png)
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008132246.png)
?
然后就打開untiy導入easy ar的插件進去,從prefabs里找到EasyAR_Startup和ImageTarget兩個物體然后拖進場景里。
?
同時把你要掃描的圖片放到一個名為:StreamingAssets的文件夾里,如果沒有這個文件夾就新建一個。注意:文件夾名字必須是StreamingAssets
?
我在這里放了很多圖片,本案例只用名為zl的圖片做例子,如圖:
?
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008132622.png)
?
在EasyAR_Startup的屬性里把剛在官網里申請到的key復制過來,放到key的里面。如下圖:
?
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008132736.png)
?
在ImageTarget的下面放一個物體(這個物體就是你掃描圖片要顯示的物體,作為ImageTarget的子物體),本案例里放了一個球體。
?
默認拖到場景里的ImageTarget在Scene里是看不到東西,我們可以給它加一個材質球,假如我這里新建的叫mat的材質球,材質球用的就是即將掃描的那張名為“zl的”圖。。。然后賦值給它,如圖:
?
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008133325.png)
?
默認的ImageTarget自己帶的腳本是ImageTargetBehaviour。當我們調整ImageTargetBehaviour里的size這個參數時(例如大小設置為3),我們就會在Scene場景中看到圖片了。如圖:
?
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008133550.png)
?
繼續配置ImageTargetBehaviour里的參數
?
path 需要把StreamingAssets路徑下的那張圖片的全名寫上包括圖片格式,例如本案例的zl.png
?
Name 就是該路徑下這個圖片的名字
?
Storage 選擇為Assets
?
loader這個地方去選擇場景里的EasyAR_Startup這個物體下的名為ImageTracker的子物體。
?
上述步驟,如下圖:
?
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008133641.png)
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008133644.png)
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008133647_0.png)
?
至此所有的開發內容完成,接下來就是打包的配置了,在playersetting里面的公司名字這里寫上我們最開始在easy ar的官網設置的項目的名字。如圖:
?
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008135423.png)
![用Unity制作AR應用](/sites/default/files/inline-images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20221008135427.png)
?
之后就是普通的安卓打包過程了,這里不再贅述。然后安裝后,記得給app訪問攝像頭的權限,然后進入app用手機掃描你設定的圖片就會看到你想顯示的東西。例如案例里的掃描zl那張圖就會有一個球體出現在畫面里。
?
注意:顯示的物體不要太大而把圖片給遮擋的太多了。遮擋多了就采集不到圖片的信息了。合理調整圖片和模型的比例以及位置。