找回密码
 立即注册
查看: 442|回复: 0

Unity AR - Vuforia初探

[复制链接]
发表于 2021-1-27 09:34 | 显示全部楼层 |阅读模式
前言
这篇文章是用来记录我对Vuforia在Unity中提供的功能的探索,因为他不是教程,所以可能很多地方不严谨,但也希望给同样遇到问题的朋友一点小小的帮助。
遇到的坑
高通的AR插件Vuforia在2017以后版本已经内置了,网上说可以通过安装包安装,反正我在安装的时候是没找到这个选项,感觉Unity官方对引擎的迭代速度太快了,以前的好多资料都不适用了。
但是我在PlayerSetting里找到了,大概在这个地方,点一下什么东西就开始安装了
我已经点过安装了,可能界面不一样,别忘了勾选图片里最后一个选项,不然后面会报错。
然后去资源商店里下载官方示例
开始研究都有什么功能~
1、单图识别  
DefaultTrackableEventHandler这个脚本的作用是控制目标图片下的子物体显示与隐藏,包括网格和碰撞的开启关闭。
在ImageTarget下面添加子对象,在运行的时候会隐藏子对象,当扫描到的目标图片的时候会出现。
2、多图识别
需要设置同时识别数量。如果不设置,默认是1的话就只能同时识别一张图片。
3、扫图放视频
看了一下案例,感觉效果还不。尝试了一下自己做播放视频功能,感觉稍有些繁琐,既然有轮子了,索性直接把它做成预制体,到时候换视频文件就好了。
视频文件在这里换
4、虚拟按钮
可以通过在现实世界中的点击操作(不是点击屏幕),来触发按钮效果
虚拟按钮的创建方式是先添加一个组件
其中SensitivitySetting是触碰的灵敏度
然后创建一个脚本继承一个接口,然后把自身注册进去,在接口提供的两个方法里写按钮点击的逻辑。把脚本挂到虚拟按钮上。
  1. using UnityEngine;
  2. using Vuforia;
  3. public class VirtualButtonCtrl : MonoBehaviour, IVirtualButtonEventHandler
  4. {
  5.         private void Awake()
  6.         {
  7.                 // 把按钮触发事件注册进去
  8.                 GetComponent<VirtualButtonBehaviour>().RegisterEventHandler(this);
  9.         }
  10.         public void OnButtonPressed(VirtualButtonBehaviour vb)
  11.         {
  12.                
  13.         }
  14.         public void OnButtonReleased(VirtualButtonBehaviour vb)
  15.         {
  16.                
  17.         }
  18. }
复制代码
5、地平面识别  
首先创建地平面识别器Plane Finder
然后创建Ground Plane Stage,就是上图的第二个选项,然后在Ground Plane Stage下面添加一个子物体,这些都做完后,如下图所示
然后我们需要把地平面引入到地平面查找器中,也就是把Ground Plane Stage引入Plane Finder中的Anchor Stage。
如果想监听地面识别的相关信息,在这里添加方法就行了,可以获取到地面信息
如果想改变识别地面后生成物体的数量,在这里改变,勾选是生成多个,反之只能生产一个
如果想监听生成物体的相关信息,在这里添加方法就好了


// TODO 下次探索的时候再补充
6、悬空放置
7、立方体识别  
8、圆柱体识别
9、模型目标识别
8、VuMark识别(下一代条形码)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-9-20 13:24 , Processed in 0.201534 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表