写在前面的话
感慨一下, WebXR的发展是真的快,20年的时候,大多都在用AR.js做WebAR。随着WebXR标准发展,现在诸如Threejs、AFrame、Unity等多个平台都支持里WebXR。
-
本文将介绍在Unity中使用 Image Tracker实现Web端的AR图像识别功能。
-
若是使用Unity在原生端做AR图像识别,请参考之前的文档(【图像识别】在Unity中使用ARCore增强图像的几种方式),详细记录了使用ARFoundation或使用我实现的AR插件两种方式。
-
若是使用安卓原生开发的方式,可以使用Scenefrom-EQR,参考ImageScanner.java(集成了ARCore和AREngine)的使用。
-
此外,在Unity中基于WebGL实现XR,还可使用Unity资源商店提供的WebAR Foundation、WebXR Plugin。
在Unity中基于 Image Tracker实现AR图像识别
由于插件较为完善,仅作简单记录。
插件安装
Unity资源商店提供了免费版本和付费版本。
-
Imagine WebAR - Image Tracker(最新版本)
-
免费版本Imagine WebAR - Image Tracker Free
运行示例
图片数据设置
在Unity中切换到WebGL平台,导入ImageTracker的unitypackage,找到demo下的scene运行即可。
替换图片的话,参考场景中的Tracker对象
手机浏览器运行
这里为了在手机端打开,我将Build后的工程部署到了服务器上。运行可图如下:
-
浏览器请求摄像头权限
-
识别图像
注意事项
- 由于应用需要访问摄像头,因此必须在支持HTTPS的服务器上进行部署。
- 设置CompressionFormat为Disabled