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图片以节省更多的内存及显存空间. 我测试时遇到了问题,后来发现必须打包出来测才有效(注 ...
随机推荐
- Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别
1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File ...
- Custom Voice 操作步骤
首先,准备数据 1.Unicode格式的Transcript 2wav格式语音数据,并打包 好,现在POSTMAN进行api测试. 先拿着订阅密钥(Subscription Key)获取令牌(Toke ...
- November 02nd, 2017 Week 44th Thursday
Knowledge is weightless, a treasure you can always carry easily. 知识没有重量,她是我们可以很容易携带的珍宝. Knowledge is ...
- [翻译] 提升树算法的介绍(Introduction to Boosted Trees)
[翻译] 提升树算法的介绍(Introduction to Boosted Trees) 1. 有监督学习的要素 XGBoost 适用于有监督学习问题.在此类问题中,我们使用多特征的训练数据集 \(x ...
- sphinx编译安装
install sphinx wget http://sphinxsearch.com/files/sphinx-2.0.8-release.tar.gz tar zxvf sphinx--relea ...
- java使用纯命令行打包项目
1: javac -d 编译之后的class文件输出目录 指定源文件位置即可.例如 对于多个包下面的源码编译,貌似javac不支持迭代编译,可能需要一次传入多个源码位置进行编译.一种便捷方法就是使 ...
- (一)RESTful 介绍
什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”或“表现层状态转化”. R ...
- day53
JS常用类 一.Number 1.常用数字 整数:10 小数:3.14 科学计数法:1e5 | 1e-5 正负无穷:Infinity | -Infinity 2.常用进制 二进制:0b1010 八进制 ...
- React Native创建一个APP
React Native 结合了 Web 应用和 Native 应用的优势,可以使用 JavaScript 来开发 iOS 和 Android 原生应用.在 JavaScript 中用 React 抽 ...
- c# WPF 获取网络图片,验证码
c# WPF 获取网络图片,验证码 public static BitmapImage getValidCodeBitmap() { string url = "http://my.baaa ...