博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unity 3D-AR开发-Vuforia教程手册
阅读量:5889 次
发布时间:2019-06-19

本文共 3154 字,大约阅读时间需要 10 分钟。

Unity 开发AR之 Vuforia


本文提供全流程,中文翻译。
Chinar 坚持将简单的生活方式,带给世人!
(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例)


Chinar —— 心分享、心创新!
助力快速完成AR的简单开发,学习 Vuforia 的使用流程
为新手节省宝贵的时间,避免采坑!

Chinar 教程效果:

这里写图片描述



全文高清图片,点击即可放大观看 (很多人竟然不知道)


Vuforia —— 增强现实

Vuforia —— 是AR开发工具中的一种,接入较为简单、且使用方便!

由于该公司和 Unity 公司进行合作,所以在2017较新版本中,直接选择安装 Vuforia 插件,即可在 Unity 中直接导入 Vuforia

具体安装步骤,就在 Unity 安装程序中选中 Vuforia ,这里就不在做过多的陈述!

使用 Vuforia 需要先注册账号

举个栗子黑白88
这里写图片描述


Create Development Key —— 创建开发者资源

1. 登陆后,点击 Get Development Key

举个栗子黑白88

这里写图片描述
这里写图片描述


2. 创建密钥

举个栗子黑白88

这里写图片描述
这里写图片描述


3. 创建数据库

举个栗子黑白88

这里写图片描述


4. 在数据库中添加一个图片

图片最好选择锐化度较高的、棱角分明的图片

(图片最大不能超过 2M/如果png不成功,就用jpg尝试)

上传后, Vuforia 后台,会自动生成文件加入当前数据库,并对图片打分1-5星不等

5星,AR测试识别率最高

在此,我用手机桌面来做测试!上传后,会给5颗星!

举个栗子黑白88
这里写图片描述
这里写图片描述


5. 下载数据库,放在桌面上待用!

举个栗子黑白88

这里写图片描述


Unity Vuforia Setting —— Unity中 Vuforia 的设置

下面,来到 Unity 中对 Vuforia 进行设置

如果菜单栏中 GameObject 中有 Vuforia 选项,则证明已经正确安装

否则需要自己去安装后,再进行一下操作

举个栗子黑白88


1. 添加 AR Camera

举个栗子黑白88

这里写图片描述


2. 设置 AR Camera 上的脚本组件 Vuforia Behavior

由于 Vuforia Behavior 为,警告:不可用状态

所以需要在 Player Setting 中进行设置

举个栗子黑白88
这里写图片描述
这里写图片描述


3. 添加密钥

添加我们之前在Vuforia网站创建的开发者密钥

举个栗子黑白88
这里写图片描述
这里写图片描述


4. 导入数据库,并设置

导入我们已经创建好的 Vuforia 数据库包 TestOneData.unitypackage 这里写图片描述 Unity 工程中

举个栗子黑白88
这里写图片描述


5. 添加AR Image

右键层次列表,添加 AR Image

并在检视面板中对属性进行设置,选择自己创建的数据 TestOneData

举个栗子黑白88
这里写图片描述


6. 添加物体

添加一个球体,用于测试AR是否正常运行

注意:

物体必须是 ImageTarget 的子物体

设置完成后点击 测试即可 (需要电脑有摄像头)

举个栗子黑白88
这里写图片描述


7. 测试效果

当镜头对准我们设置好的图像后,会显示 球体

Vuforia 免费版,都会有Logo

见谅:(我的台式电脑没配摄像头)

该测试图样,来自于我5年前的备用机 HTC One ,有些老旧、进灰

举个栗子黑白88
这里写图片描述


8. ——安卓打包报错

上边提到,安卓打包会报错

那是因为 Vuforia 不支持 Android TV ,所以需要在 Player Setting 中关闭该选项

即可成功打包工程

举个栗子黑白88
这里写图片描述

至此:Vuforia 基本操作流程完美结束


Explain —— 说明

如果想要进行更多的操作,*需要深入学习

其他就跟平时写 Unity 项目一样了,通过代码控制, UGUI 添加界面即可

没有什么区别

例如想让物体动起来、变色,直接加代码即可

举个栗子黑白88
给球添加一个材质球,把脚本挂在 球身上

即可实现每隔一秒变一次色

using System.Collections;using UnityEngine;/// /// 改变球体颜色/// public class ChangeBall : MonoBehaviour{    private Material deMaterial;         //默认材质    public  float    speed       = 10f;  //渐变速度    public  float    rotateSpeed = 360f; //旋转速度    void Start()    {        deMaterial = GetComponent
().material; InvokeRepeating("ChangeColor", 1, 1); } void Update() { transform.Rotate(Vector3.up, rotateSpeed * Time.deltaTime); //自转 } ///
/// 随机颜色 /// ///
Color
private Color RandomColor() { float r = Random.Range(0f, 1f); float g = Random.Range(0f, 1f); float b = Random.Range(0f, 1f); Color color = new Color(r, g, b); return color; } ///
/// 改变颜色 /// private void ChangeColor() { StopAllCoroutines(); Color temColor = RandomColor(); StartCoroutine(ColorEnumerator(temColor)); } ///
/// 开启协程 —— 循环颜色 /// ///
IEnumerator ColorEnumerator(Color temColor) { while (true) //死循环 { deMaterial.color = Color.Lerp(deMaterial.color, temColor, speed * Time.deltaTime); //插值 yield return 10; //每次暂停10帧 } }}

这里写图片描述


支持

May Be —— 搞开发,总有一天要做的事!

拥有自己的服务器,无需再找攻略!
Chinar 提供一站式教程,闭眼式创建!
为新手节省宝贵时间,避免采坑!

1 ——
2 ——
3——
4 ——


70
Chinar


END

本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究

对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com
对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址

转载于:https://www.cnblogs.com/chinarbolg/p/9601441.html

你可能感兴趣的文章
java 生成对称密钥_java中以DES的方式实现对称加密并提供密钥的实例
查看>>
java hostwrite_一个RUNNABLE状态的线程hang在了java.io.FileOutputStream.writeBytes方法上
查看>>
计算机java语言答案_【计算机考试】JAVA语言,求答案!!!
查看>>
java web session管理_Java Web之会话管理二:Session
查看>>
java 面向对象基本概念_Java面向对象-面向对象编程之基本概念
查看>>
java数值保留2位小数_java中如何使Double类型的数值保留两位小数问题
查看>>
java基础包括哪些内容_Java基础课程内容有哪些?
查看>>
java跨行_小白跨行学习Java的辛酸路程
查看>>
mysql5.7 外键错误_mysql5.7 创建表外键失败 求看下!!!! 折磨我一天了?
查看>>
python asyncio文件操作_Python中使用asyncio封装文件读写详解及实例
查看>>
java邮件数据库_java 发送数据库查询的数据作为excel表格邮件
查看>>
画图程序 java_一个JAVA画图程序
查看>>
java深度解析 pdf_这一份Spring源码解析PDF,阿里架构师直言:全网最深度解析!...
查看>>
为什么java类中可以创建实例_java – 为什么我出乎意料地能够创建我的单例类的多个实例?...
查看>>
将java与sql相连_JAVA与数据库MySQL相连接
查看>>
bean包 java_BeanUtils工具包操作JavaBean
查看>>
pythonweb自动化如何定位div标签定位div表情_基于Python的Web自动化(Selenium)之元素定位...
查看>>
java jdk-8u152_jdk-8u152-macosx-x86_64-demos java 1.8 代码大全 - 下载 - 搜珍网
查看>>
java反序列化漏洞POP查找_Java反序列化漏洞:在受限环境中从漏洞发现到获取反向Shell...
查看>>
php数组分行输出json_php数组输出这样的json
查看>>