Unity 3D-AR开发-Vuforia教程手册

Unity 开发AR之 Vuforia


本文提供全流程,中文翻译。

Chinar 坚持将简单的生活方式,带给世人!

(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例)

Chinar —— 心分享、心创新!

助力快速完成AR的简单开发,学习 Vuforia 的使用流程

为新手节省宝贵的时间,避免采坑!

Chinar 教程效果:

Unity 3D-AR开发-Vuforia教程手册



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


Vuforia —— 增强现实

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



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

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

使用 Vuforia 需要先注册账号

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


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

1. 登陆后,点击 Get Development Key

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


2. 创建密钥

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


3. 创建数据库

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


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

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

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

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

5星,AR测试识别率最高

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

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


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

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


Unity Vuforia Setting —— Unity中 Vuforia 的设置

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

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

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

Unity 3D-AR开发-Vuforia教程手册


1. 添加 AR Camera

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


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

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

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

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


3. 添加密钥

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

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


4. 导入数据库,并设置

导入我们已经创建好的 Vuforia 数据库包 TestOneData.unitypackage Unity 3D-AR开发-Vuforia教程手册到 Unity 工程中

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


5. 添加AR Image

右键层次列表,添加 AR Image

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

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


6. 添加物体

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

注意:

物体必须是 ImageTarget 的子物体

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

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


7. 测试效果

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

Vuforia 免费版,都会有Logo

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

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

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册


8. ——安卓打包报错

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

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

即可成功打包工程

Unity 3D-AR开发-Vuforia教程手册

Unity 3D-AR开发-Vuforia教程手册

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


Explain —— 说明

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

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

没有什么区别

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

Unity 3D-AR开发-Vuforia教程手册

给球添加一个材质球,把脚本挂在 球身上

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

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

Unity 3D-AR开发-Vuforia教程手册


支持

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

拥有自己的服务器,无需再找攻略!

Chinar 提供一站式教程,闭眼式创建!

为新手节省宝贵时间,避免采坑!

先点击领取 —— 阿里全产品优惠券 (享受最低优惠)



1 —— 云服务器超全购买流程 (新手必备!)



2 —— 阿里ECS云服务器自定义配置 - 购买教程(新手必备!)



3—— Windows 服务器配置、运行、建站一条龙 !



4 —— Linux 服务器配置、运行、建站一条龙 !


Unity 3D-AR开发-Vuforia教程手册

" role="presentation">

Chinar


END

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


对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com


对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址

上一篇:Kali Linux破解wifi密码(无须外置网卡)


下一篇:java怎么定义一个二维数组?