文章目录
一、最终运行效果
(由于使用的是EasyAR
个人版,所有会有个EasyAR
的水印)Demo
工程已上传到GitHub
,感兴趣的同学可以自行下载。GitHub
地址:https://github.com/linxinfa/UnityEasyARDemoAndroid
(注:我这个工程只包含Android
平台的EasyAR SDK
,这样可以减少工程大小,如果要其他平台的SDK
文件,可从EasyAR
官网下载)
二、制作过程
1、注册/登录 开发者账号
EasyAR
官网:https://www.easyar.cn/
注册/登录 开发者账号。
2、创建License Key(许可证秘钥)
我们需要先创建一个License Key
(许可证秘钥),后面会将这个License Key
填写到工程设置中。
点击我需要一个新的Sense许可证密钥
。
选择个人版,填写应用名称、(Bundle ID
)包名。
比如应用名:UnityARDemo
,包名为com.linxinfa.ardemo
,这个包名后面打包的时候会用到。
创建成功,可以看到我们创建了一个UnityARDemo
,点击进入。
可以看到License Key
,这个License Key
后面会用到。
3、EasyAR SDK下载
SDK下载:https://www.easyar.cn/view/download.html#download-nav2
我们是Unity
工程,所以直接下Unity
版的SDK
,点击下载EasyARSenseUnityPlugin_xxx.zip
。
下载下来后解压,里面是一个unitypackage
包。
4、SDK导入Unity工程
将unitypackage
包拖入Unity
工程中导入,可以看到EasyAR
和Plugins
两个目录。
5、配置License Key
点击菜单EasyAR -> Change License Key
。
填入上面网页中申请的License Key
。
6、Main Camera设置Solid Color
将Main Camera
主摄像机的Clear Flags
为Solid Color
,并且Background
为黑色。
7、EasyAR_ImageTracker-1
EasyAR
针对各种应用场景,帮我们包装了很多预设,我们可以直接使用这些预设。
因为我们要做的是图像追踪,所以要用到EasyAR_ImageTracker-1
这个预设,将其拖入到场景中。
将节点展开,可以看到三个子节点:RenderCamera
、VideoCameraDevice
、ImageTracker
。
8、StreamingAssets放置图片
将我们要识别的目标图片放在工程中的Assets
的StreamingAssets
目录中,如果没有StreamingAssets
目录,则手动创建一个,如下,我放了一个张fu.jpg
。
9、ImageTarget
将ImageTarget
预设拖到场景中,它就是我们要识别的目标图片。
选中ImageTarget
,将EasyAR_ImageTracker-1
子节点中的ImageTracker
赋值给ImageTarget
的Tracker
。(正常情况下它会自动赋值,不需要手动)。Source Type
选择Image File
,Path Type
选择Streaming Assets
,Path
填写图片名字+后缀,如fu.jpg
,Name
填写图片名字,如fu
,Scale
是缩放,可以调整图片的缩放大小。
可以看到Scene
场景中看到了我们的图片。(注意:Game
场景是看不到的,最后运行的时候,这张图片不会显示在屏幕中)
10、3D模型作为ImageTarget子节点
现在,我们要在追踪的图像的位置显示3D
模型。将3D
模型放到ImageTarget
子节点中。
11、发布Android平台
注意包名使用在EasyAR
开发者账号中申请的包名,如com.linxinfa.ardemo
。
最后打出apk
包
安装到手机上,运行效果如下: