AR脱卡功能
话不多说,思路如下
实现脱卡功能主要是改变官方原脚本里的OnTrackingLost()这个方法
在识别图丢失的时候不进行销毁,而是将他放置在合适的位置,用ARCamera来渲染丢失的模型

在网上也有许多脱卡的讲解,,如Vuforia入门学习笔记 —— 三种脱卡方法,我这里用的是他的第三种脱卡方法,然后进行了一些改动

  1. 主要代码:

OnTrackingFound()

 protected virtual void OnTrackingFound(){// TrackObject-------->> class TrackObject// 这里的TrackObject为另外一个挂载于脱卡对象上的脚本TrackObject[] objects = FindObjectsOfType<TrackObject>();foreach (TrackObject to in objects){Destroy(to.gameObject);}//卸载无用资源Resources.UnloadUnusedAssets();//加载需要现实的模型,并实例化到场景中//prefabs ------>> public GameObject prefabs;//注:此处的prefabs为已经做好的模型预制体GameObject obj = GameObject.Instantiate(prefabs) as GameObject;//将父物体设置为 ImageTargetobj.transform.parent = this.transform;//设置该物体的物体位置obj.transform.position = this.transform.position;isFirst = true;}

OnTrackingLost()

protected virtual void OnTrackingLost(){//、从子物体中获取所有TrackObject组件TrackObject to = GetComponentInChildren<TrackObject>();if (to != null && isFirst){//将模型从ImageTarget下移出to.transform.parent = this.transform.parent;//设置模型位置,旋转角//LoatPosition ------->> calss TrackObject ---> public Vector3 LostPosition  to.transform.position = to.LostPosition;to.transform.localRotation = Quaternion.Euler(Vector3.zero);} }

到这里,已经把原始的识别与丢失的方法更改完成
然后创建TrackObject脚本

public class TrackObject : MonoBehaviour
{//调整位置,将做好的预制体放入场景,于game界面查看,并将模型调整为需要的位置public Vector3 LostPosition = new Vector3(xxxf, xxxf, xxxf);
}
  1. 搭场景

做一个预制体,将TrackObject脚本放置上,然后将场景里的模型删除
将这个预制体拖入prefabs

3. 运行
4. 总结
直接使用ARCamera渲染脱卡后的模型

注:做好的prefabs可以放在Resources文件夹下,因为生成APP时Resources文件夹下的文件是直接压缩并包含在平台可执行文件中。但是,Resources下的内容过多会导致内存占用量大并且耗时,卡顿。关于Resources文件夹—>Unity资源管理(二)-Resources文件夹

本人的学习经验,有地方不足或者不对的地方请指正

Unity使用Vuforia实现AR脱卡功能相关推荐

  1. Vuforia AR 脱卡功能的实现

    在AR的开发过程中有时候会需要用到脱卡功能,脱卡功能是指即使识别图丢失的情况下被识别出来的模型也不会消失: 实现脱卡功能有以下几种解决思路: 在Vuforia插件的默认条件下,当识别图离开摄像头时间, ...

  2. EasyAR实现脱卡功能

    个人觉得所有ARSDK实现脱卡功能的方法都差不多,大致思路就是,托卡后将模型的父类设为ARCamera下的一个游戏物体,并调整好位置. 之前参考过这个EasyAR脱卡方法,(这个方法里的脚本一定得加到 ...

  3. ARFoundation系列讲解 - 52 脱卡功能

    一.介绍 ARKit和ARCore识别成功后,当识别图离开相机画面后模型还会留在原地,不会像vufouria一样丢失.如果我们想要它丢失或者直接居中在屏幕位置(脱卡).就需要使用代码实现.本章节将讲解 ...

  4. Unity 3D + Vuforia制作AR人物互动

    原文地址:http://blog.csdn.net/ekhsofxe_ibb/article/details/18655905 话说之前说过了咱与本地漫展商合作推出AR app,虽然他们之前也已经做过 ...

  5. 0基础小白用unity+vuforia实现AR随机抽卡/盲盒功能

    unity+Vuforia实现海洋动物随机AR盲盒 目录 Vuforia 一.在vuforia上注册许可证 二.添加识别目标图像数据 三.搭建AR程序 四.随机盲盒的进阶AR程序 Vuforia 这是 ...

  6. Unity+Vuforia+Hololens2 AR开发

    接触了一个使用HoloLens在Unity中开发一个AR程序的项目.网上的教程很乱,在这里整合一下官方以及各博客的教程. 本文包括环境的安装和配置,一个demo的实现及在HoloLens2上的部署过程 ...

  7. Unity Vuforia 之 AR 识别物体抖动的简单解决思路参考

    Unity Vuforia 之 AR 识别物体抖动的简单解决思路参考 目录 ​ 一.简单介绍 二.问题 三.简单解决思路 附录:Vuforia SDK 的功能如下 一.简单介绍 目前世界上主流的AR ...

  8. 【Unity3D小功能】Unity3D中实现UI擦除效果、刮刮卡功能

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦. 一.前言 ...

  9. 【AR-1】安装Unity+注册Vuforia,以及在Unity中导入Vuforia

    首先,我根据硕博论文知道手机AR的软件是Unity+Vuforia. 然后,去知乎上搜索如何配置开发环境.找到一篇很好的知乎:UnityAR系列(二)--AR插件Vuforia入门 - 知乎 (zhi ...

最新文章

  1. zoom:1是什么意思
  2. NDK相关概念与NDK开发步骤
  3. 【Android 高性能音频】Oboe 开发流程 ( 检查 Oboe 音频流属性 | 开始播放 | 停止播放 | 关闭 Oboe 音频流 | 重新配置 Oboe 音频流属性 )
  4. C# Graphic 绘制圆、三角形、椭圆、图片
  5. #pragma message的作用
  6. java一句话木马连接_webshell一句话木马大全
  7. GDCM:gdcm::Version的测试程序
  8. uva 1312——Cricket Field
  9. 实践 Redux,第 1 部分: Redux-ORM 基础
  10. mysql安装 demo [linux centos7] [5.7.26]
  11. 【原始图像】对数及对比度扩展变换
  12. 看到一个RISC-V指令集的评论
  13. JAVA EE常见英文单词(一)
  14. APISpace 绕口令API接口 免费好用
  15. 简单屏幕录制截屏工具
  16. lvm扩容lv扩容操作记录
  17. 读吴军博士新浪微博(2012.09-2014.12)信息整理
  18. UE4Possess切换控制Pawn
  19. 用ssh方法scp,从本地传输文件到服务器
  20. jQuery实现的浮动广告

热门文章

  1. 推荐系统从无到有(0)——虚拟机及宿主机配置
  2. 阿里曾文旌:Greenplum和Hadoop对比,架构解析及技术选型-CSDN公开课-专题视频课程...
  3. python爬取微博恶评_python爬取微博评论的实例讲解
  4. 任何人都能看得懂的网络协议之 ARP
  5. 实力在线,超久续航,电动车品牌排行前列的绿源当仁不让
  6. 无线pda是快递员随身携带的设备
  7. Qt 之 ActiveX控件跑官方例程记录
  8. 大姨妈在运营方面积累的一些经验(3点)
  9. Win8系统hiberfil.sys是什么文件?Win8系统hiberfil.sys怎么删除?
  10. CSDN博客编辑格式