Unity实现简单的AR
,本篇是我在博客园上第一次写随笔,有什么不对或者问题可以在评论区留言告诉我哈!
关于AR(增强现实技术(Augmented Reality))简单的概念,在这里就不说了,有兴趣的同学可以上网详细了解,今天我的目的也是让自己复习一下关于AR的知识,还有就是让新接触Unity的小伙伴也可以体验一下,跟着我的步骤走,自己实现是没问题的,接下来正文.
第一步:打开网页,进入Vuforia官网:https://developer.vuforia.com/home-page,也可以直接百度,第一条就是,点击进入,

第二步:进入官网,点击图示中的Develop,进入后会提示登陆,有账号的小伙伴可以直接登陆,没有的自己注册一下(作为21世纪的少年,注册账号应该是必备技能了),然后登陆进入

第三步:进行许可管理注册,依次点击两个蓝色框框中的按钮,获取一个Key,

第四步:按下图输入App名称,同意条款,确定

第五步,选择项目名称,点击

第六步:生成许可密钥,在Unity工程中需要,即下图红色框框中的一连串,

第七步:创建Database

第八步:输入名称,类型选择第一个就可以,创建

第九步:点击创建好的
第十步:添加Target(Target为所识别的图片文件,格式为.jpg或者.png),选择一张对比度清晰、识别度高的图片。图片名称必须为英文
也可以将图片替换成3D物体或者其他,有兴趣的可以自己试试,这里我就用图片了

第十一步:添加成功,导出资源


选择下载,会下载一个unity的资源包

在网站上操作的部分就完成了 ,接下来是Unity部分,新建项目我就不详细说了,插件的话在刚刚的官网是可以下载的,接下来就是导入插件和刚下载的资源包,导入的话直接拖到Unity资源面板就可以了.

导入插件后会有这三个文件夹
导入刚下载的资源包会增加两个文件夹
第十二步:找到下图中的两个预设物资源,加入到层级面板中,删除场景中的原相机

第十三步:配置AR相机,点击ARCamera,属性面板中点击下图红色框框中的按钮

第十四步:将刚刚网站上的产品密钥(第六步红色框中的)粘贴到下图所示位置,设置成激活状态

第十五步:设置ImageTarget(拖入层级面板中的第二个预设物),点击,在属性面板上操作入下图所示,设置Database和ImageTarget

接下来将你想要在AR中显示的东西拖成Image Target的子物体就可以了.
这里我创建了一个球体(蓝色),简单加了一个动画,让它绕Y轴旋转,加了一个方块(红色)让它显示出来旋转,然后运行.
我是在手机上显示图片,运行时将电脑摄像头对准手机上的图片拍摄,在Game窗口会显示摄像头看到的图片上有一个旋转的蓝色球体,这样就成功了.
你也可以将带有动画的很酷的模型导入Unity,放在Image Target下,还可以导出apk安卓文件,这样在手机上就可以显示了.

一上午的时间,终于完成了,虽然说很有可能没人看到,但还是有点小小的成就感的,也让我对博客园里的大佬越加钦佩了.
要走的路还有很远,加油!
这是我的第一篇随笔,有看不懂的小伙伴也别怪我,可以评论问我,我看到会回复的,好了,平复一下心情,吃午饭去喽.
Unity实现简单的AR的更多相关文章
- unity网络----简单基础
网络 TCP:与打电话类似,通知服务到位 UDP:与发短信类似,消息发出即可 IP和端口号是网络两大重要成员 端口号(Port)分为知名端口号[0-1024,不开放)和动态端口号[1024,10000 ...
- Unity IOC简单认知
看了不少IOC的文章.简单概念梳理下. 1.依赖,依赖倒置,控制反转(IOC),依赖注入 解释是仿照http://www.cnblogs.com/qqlin/archive/2012/10/09/27 ...
- unity 实现简单的分离
在网上随便搜一搜资料就可以找到很多关于Mvc ,MVVM,StrangeIoc等有关显示与数据分离的博客,很多大神也是讲的蛮有道理的,但是这些框架理解起来有一定的难度, 这时候肯定有人说有现成的框架为 ...
- Unity中简单使用Opengl
简介 由于项目特殊需求,需要在unity中使用一些OpenGL的东西来绘制图形(PS:其实就是有一个拖尾算法只有OpenGL版本~~~懒得改了,直接在unity中使用OpenGL算了).所以琢磨咯下如 ...
- C# Ioc容器Unity,简单实用
开头先吐槽一下博客园超级不好用,添加图片后就写不动字了,难道是bug 好进入正题,先来说下依赖注入,简单来说就是定义好接口,上层代码调用接口,具体实现通过配置文件方式去指定具体实现类. 首先我们需要通 ...
- unity制作简单血条
学习Unity已经10天了,也没发现有什么长进,真的急.昨天仿着官方Demo做了个射击游戏轮廓,其中需要给每个怪做一个血条. 搜了一些,挺复杂的,用NGUI或者UGUI,外加很长的代码...不过还是找 ...
- Unity项目 - 简单时钟 Clock
项目展示 Github项目地址:简单时钟 Clock 制作流程 表盘绘制: 采用Aseprite 像素绘图软件绘制表盘及指针.本例钟表素材大小 256x256,存储格式为png,但发现导入Unity后 ...
- Unity实现简单的对象池
一.简介 先说说为什么要使用对象池 在Unity游戏运行时,经常需要生成一些物体,例如子弹.敌人等.虽然Unity中有Instantiate()方法可以使用,但是在某些情况下并不高效.特别是对于那些需 ...
- Unity StreamingMipmaps 简单测试
StreamingMipmaps是Unity2018.2中加入的新功能,意指通过CPU控制,只加载部分Mipmap图片以节省更多的内存及显存空间. 我测试时遇到了问题,后来发现必须打包出来测才有效(注 ...
随机推荐
- UNIX高级环境编程(13)信号 - 概念、signal函数、可重入函数
信号就是软中断. 信号提供了异步处理事件的一种方式.例如,用户在终端按下结束进程键,使一个进程提前终止. 1 信号的概念 每一个信号都有一个名字,它们的名字都以SIG打头.例如,每当进程调用了ab ...
- ip 命令的使用
网上相似的资源很多,可以参考如下资料: man ip ip help 博客链接: https://linoxide.com/linux-command/use-ip-command-linux/ ht ...
- Linux 修改root密码(忘记密码后)
重置密码(一) 背景: 本文基于虚拟机的RHEL6.6版本 RHEL7与此略有不同 重新启动Linux系统 进入如下后界面,再按e键 3. 进入如下界面后,使用键盘上的上下键,选中第二项以kerne ...
- IIS 安全设置
这近网站中毒,以下把IIS安全设置记录一下,以便查阅. 1.对于不需要执行的目录,将处理程序映射中的编辑功能权限中的脚本去掉,这样即使上传了木马文件在此目录,也是无法执行的. 删除IIS默认的匿名用户 ...
- 5.Dubbo2.5.3泛化引用和泛化实现
转载请出自出处:http://www.cnblogs.com/hd3013779515/ 1.泛化引用 泛接口调用方式主要用于客户端没有API接口及模型类元的情况,参数及返回值中的所有POJO均用Ma ...
- AndroidStudio编译error:app:validateReleaseSigning'Keystore file not found for signing config 'release
使用AndroidStudio编译时提示error: Error:Execution failed for task ‘:app:validateReleaseSigning’. > Keyst ...
- 为什么重写equals必须重写hashcode?
示例代码: class User { private String name; public User(String name) { this.name = name; } @Override pub ...
- MyBatis实战之解析与运行
本次所谈的原理仅仅只涉及基本的框架和核心代码,并不会全部都说到,比如关于MyBatis是如何解析XML文件和其他配置文件从而的到内容,还有就是JDBC如何使用,关于JDBC如何使用,可以参考我的这篇博 ...
- Kubernetes1.91(K8s)安装部署过程(五)--安装flannel网络插件
node节点需要安装flannel网络插件才能保证所有的pod在一个局域网内通信,直接使用yum安装即可,版本是0.7.1. 1.安装flannel插件: 注意是2个node节点都需要安装,都需要修改 ...
- DFT scan chain
现代集成电路的制造工艺越来越先进,但是在生产过程中的制造缺陷也越来越难以控制,甚至一颗小小的PM2.5就可能导致芯片报废,为了能有效的检测出生产中出现的废片,需要用到扫描链测试(scan chain) ...