文章目录

一、最终运行效果

二、制作过程

  • 1、注册/登录 开发者账号
  • 2、创建License Key(许可证秘钥)
  • 3、EasyAR SDK下载
  • 4、SDK导入Unity工程
  • 5、配置License Key
  • 6、Main Camera设置Solid Color
  • 7、EasyAR_ImageTracker-1
  • 8、StreamingAssets放置图片
  • 9、ImageTarget
  • 10、3D模型作为ImageTarget子节点
  • 11、发布Android平台

一、最终运行效果

(由于使用的是EasyAR个人版,所有会有个EasyAR的水印)

unity AR 放置 unity ar demo_ar

Demo工程已上传到GitHub,感兴趣的同学可以自行下载。

GitHub地址:https://github.com/linxinfa/UnityEasyARDemoAndroid (注:我这个工程只包含Android平台的EasyAR SDK,这样可以减少工程大小,如果要其他平台的SDK文件,可从EasyAR官网下载)

unity AR 放置 unity ar demo_unity AR 放置_02

二、制作过程

1、注册/登录 开发者账号

EasyAR官网:https://www.easyar.cn/ 注册/登录 开发者账号。

unity AR 放置 unity ar demo_EasyAR_03

2、创建License Key(许可证秘钥)

我们需要先创建一个License Key(许可证秘钥),后面会将这个License Key填写到工程设置中。

点击我需要一个新的Sense许可证密钥。

unity AR 放置 unity ar demo_EasyAR_04

选择个人版,填写应用名称、(Bundle ID)包名。

比如应用名:UnityARDemo,包名为com.linxinfa.ardemo,这个包名后面打包的时候会用到。

unity AR 放置 unity ar demo_EasyAR_05

创建成功,可以看到我们创建了一个UnityARDemo,点击进入。

unity AR 放置 unity ar demo_EasyAR_06

可以看到License Key,这个License Key后面会用到。

unity AR 放置 unity ar demo_unity_07

3、EasyAR SDK下载

SDK下载:https://www.easyar.cn/view/download.html#download-nav2 我们是Unity工程,所以直接下Unity版的SDK,点击下载EasyARSenseUnityPlugin_xxx.zip。

unity AR 放置 unity ar demo_unity AR 放置_08

下载下来后解压,里面是一个unitypackage包。

unity AR 放置 unity ar demo_unity AR 放置_09

4、SDK导入Unity工程

将unitypackage包拖入Unity工程中导入,可以看到EasyAR和Plugins两个目录。

unity AR 放置 unity ar demo_增强现实_10

5、配置License Key

点击菜单EasyAR -> Change License Key。

unity AR 放置 unity ar demo_EasyAR_11

填入上面网页中申请的License Key。

unity AR 放置 unity ar demo_ar_12

6、Main Camera设置Solid Color

将Main Camera主摄像机的Clear Flags为Solid Color,并且Background为黑色。

unity AR 放置 unity ar demo_unity AR 放置_13

7、EasyAR_ImageTracker-1

EasyAR针对各种应用场景,帮我们包装了很多预设,我们可以直接使用这些预设。

因为我们要做的是图像追踪,所以要用到EasyAR_ImageTracker-1这个预设,将其拖入到场景中。

unity AR 放置 unity ar demo_unity_14

将节点展开,可以看到三个子节点:RenderCamera、VideoCameraDevice、ImageTracker。

unity AR 放置 unity ar demo_unity AR 放置_15

8、StreamingAssets放置图片

将我们要识别的目标图片放在工程中的Assets的StreamingAssets目录中,如果没有StreamingAssets目录,则手动创建一个,如下,我放了一个张fu.jpg。

unity AR 放置 unity ar demo_unity_16

unity AR 放置 unity ar demo_unity AR 放置_17

9、ImageTarget

将ImageTarget预设拖到场景中,它就是我们要识别的目标图片。

unity AR 放置 unity ar demo_unity AR 放置_18

选中ImageTarget,将EasyAR_ImageTracker-1子节点中的ImageTracker赋值给ImageTarget的Tracker。(正常情况下它会自动赋值,不需要手动)。

unity AR 放置 unity ar demo_unity AR 放置_19

Source Type选择Image File,

Path Type选择Streaming Assets,

Path填写图片名字+后缀,如fu.jpg,

Name填写图片名字,如fu,

Scale是缩放,可以调整图片的缩放大小。

unity AR 放置 unity ar demo_EasyAR_20

可以看到Scene场景中看到了我们的图片。(注意:Game场景是看不到的,最后运行的时候,这张图片不会显示在屏幕中)

unity AR 放置 unity ar demo_unity AR 放置_21

10、3D模型作为ImageTarget子节点

现在,我们要在追踪的图像的位置显示3D模型。将3D模型放到ImageTarget子节点中。

unity AR 放置 unity ar demo_EasyAR_22

11、发布Android平台

注意包名使用在EasyAR开发者账号中申请的包名,如com.linxinfa.ardemo。

unity AR 放置 unity ar demo_EasyAR_23

最后打出apk包

unity AR 放置 unity ar demo_EasyAR_24

安装到手机上,运行效果如下:

unity AR 放置 unity ar demo_ar