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

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

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;


/// <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帧
        }
    }
}

这里写图片描述


支持

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


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

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

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


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


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

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

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

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





Chinar


END

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

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

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

相关文章
|
7月前
|
人工智能 小程序 前端开发
一个小程序轻量AR体感游戏,开发实现解决方案
针对青少年运动兴趣不足问题,AR体感游戏凭借沉浸式互动体验脱颖而出。结合小程序“AI运动识别”插件与WebGL渲染技术,可实现无需外设的轻量化AR健身游戏,如跳糕、切水果等,兼具趣味性与锻炼效果,适用于儿童健身及职工团建,即开即玩,低门槛高参与。
|
7月前
|
人机交互 开发工具 vr&ar
使用Unity引擎开发Rokid主机应用的模型交互操作
本文介绍如何使用Unity引擎结合Rokid OpenXR Plugin开发空间计算应用,实现射线交互、模型操作等功能。涵盖环境配置、Demo导入、UI搭建与脚本编写,助力开发者快速构建AR交互应用。
|
算法 测试技术 vr&ar
Unity Vufoia+AR模型抖动的问题
**图像识别与跟踪精度问题**:Vuforia 依赖特征点检测,环境光线不稳定、目标纹理不丰富或遮挡会导致特征点匹配误差,引起AR模型抖动。跟踪丢失和重定位延迟也会导致模型不稳定。 **设备硬件与性能问题**:移动设备摄像头易受手持抖动影响,低性能设备无法及时处理图像数据,导致跟踪结果更新延迟。 **模型与坐标系问题**:AR模型重心设置不合理或坐标系转换误差,会使模型在虚拟空间中不稳定。 **算法与参数设置问题**:跟踪算法局限性和参数设置不合理(如灵敏度过高或平滑度过低)都会影响跟踪稳定性。 。
|
11月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
666 18
|
10月前
|
数据采集 边缘计算 定位技术
ar景区导航导览开发方案:核心技术架构与功能设计
本方案针对传统景区导航吸引力弱、互动性差等问题,融合三维建模、多源定位与AR引擎技术,实现室内外精准导航与AR互动体验。支持AR寻宝等功能,提升游客体验与景区竞争力。
653 0
|
编译器 vr&ar 图形学
从零开始的unity3d入门教程(五)---- 基于Vuforia的AR项目
这是一篇Unity3D结合Vuforia实现增强现实(AR)项目的入门教程,涵盖了环境配置、Vuforia账户注册、Target数据集创建、Unity项目设置、AR程序配置、Android环境配置以及最终在手机上测试运行的全过程。
从零开始的unity3d入门教程(五)---- 基于Vuforia的AR项目
|
图形学 开发者 存储
超越基础教程:深度拆解Unity地形编辑器的每一个隐藏角落,让你的游戏世界既浩瀚无垠又细节满满——从新手到高手的全面技巧升级秘籍
【8月更文挑战第31天】Unity地形编辑器是游戏开发中的重要工具,可快速创建复杂多变的游戏环境。本文通过比较不同地形编辑技术,详细介绍如何利用其功能构建广阔且精细的游戏世界,并提供具体示例代码,展示从基础地形绘制到植被与纹理添加的全过程。通过学习这些技巧,开发者能显著提升游戏画面质量和玩家体验。
1445 3
|
图形学 数据可视化 开发者
超实用Unity Shader Graph教程:从零开始打造令人惊叹的游戏视觉特效,让你的作品瞬间高大上,附带示例代码与详细步骤解析!
【8月更文挑战第31天】Unity Shader Graph 是 Unity 引擎中的强大工具,通过可视化编程帮助开发者轻松创建复杂且炫酷的视觉效果。本文将指导你使用 Shader Graph 实现三种效果:彩虹色渐变着色器、动态光效和水波纹效果。首先确保安装最新版 Unity 并启用 Shader Graph。创建新材质和着色器图谱后,利用节点库中的预定义节点,在编辑区连接节点定义着色器行为。
1965 1
|
图形学 开发者
【Unity光照艺术手册】掌握这些技巧,让你的游戏场景瞬间提升档次:从基础光源到全局光照,打造24小时不间断的视觉盛宴——如何运用代码与烘焙创造逼真光影效果全解析
【8月更文挑战第31天】在Unity中,合理的光照与阴影设置对于打造逼真环境至关重要。本文介绍Unity支持的多种光源类型,如定向光、点光源、聚光灯等,并通过具体示例展示如何使用着色器和脚本控制光照强度,模拟不同时间段的光照变化。此外,还介绍了动态和静态阴影、全局光照及光照探针等高级功能,帮助开发者创造丰富多样的光影效果,提升游戏沉浸感。
995 1
|
vr&ar C# 图形学
如何开发增强现实(AR)应用:技术指南与实践
【8月更文挑战第24天】开发增强现实应用是一个充满挑战和机遇的过程。通过选择合适的技术栈、遵循科学的开发步骤,并充分考虑用户体验、设备兼容性、内容与创意以及数据安全等因素,您可以成功打造一款高质量的AR应用。随着技术的不断进步和应用场景的不断拓展,AR应用的未来充满了无限可能。
1337 1

热门文章

最新文章