github传送门:https://github.com/dongzizhu/unity3DLearning/tree/master/hw10/ARtest

B站传送门:https://space.bilibili.com/472759319

Vuforia安装

在新建一个unity项目后,以此选择File -> Build Settings -> Player Settings -> Player->XR Settings,勾选Vuforia Argumented Reality Support。

然后进入官网下载安装文件,安装给对应版本的项目即可。

创建数据库

上官网:https://developer.vuforia.com注册一个账号,然后登陆后即可看到下图

然后点击右侧Get Developmen Key,见到下图。

在这里创建一个新的License,创建后可以看到下图。

然后进入Target Manager,点击Add Database创建一个新的数据库。

创建好之后就可以在Target Manager中找到了,点击进入后选择Add Target。

这里上传一张找好的用于定位的图片即可。图片应该尽量对比度高一些,纹理相对复杂,可以直接在黑白纹身图照一张你喜欢的:)。上传成功后就可以点击右边的Download Database下载了。而且这里可以看到你上传的图片的评分,得分越高越便于识别。

虚拟按键

接下来在项目中,我们就可以直接新建Vuforia Engine对象Image和ARCamera了。其中在ARCamera中我们可以在Vuforia Behavior组件中打开configuration。

然后在App License Key中填上在官网中License Manager点开对应license找到的Key即可。

然后我们在新建的Image Target下新建一个动画,这里我选择的是之前在Asset Store免费下载的StoneMonster。接着在Image Target Behaviour组件的Advanced栏下选择Add Virtual Button,并改名字为up。最后在up这个Button下新建一个plane作为按钮的实体,其名为upPlane。

下面就可以来完成代码逻辑了。这里我们简单地做一个demo:让每次按下button,monster上升;松开button,monster下降。具体代码如下。

using UnityEngine;
using Vuforia;public class buttonBehaviour : MonoBehaviour, IVirtualButtonEventHandler
{public GameObject vbs;public Animator animator;void Start(){VirtualButtonBehaviour vbb = vbs.GetComponent<VirtualButtonBehaviour>();if (vbb){vbb.RegisterEventHandler(this);}}public void OnButtonPressed(VirtualButtonBehaviour vb){Debug.Log("Pressed");animator.transform.Translate(Vector3.up /100);}public void OnButtonReleased(VirtualButtonBehaviour vb){Debug.Log("Released");animator.transform.Translate(Vector3.down / 100);}
}

我们将这个脚本挂载在ImageTarget上,然后将Vbs和Animator都选成对应的对象即可。

最后,我们只要让图片完整地出现在镜头前一次,就可以完成识别了。最终的效果截图如下所示,演示视频见文章开头的传送门。

【游戏开发】unity教程10 VR库 Vuforia相关推荐

  1. Unity VR游戏开发干货教程:VR中的交互方式

    原文:http://www.gameres.com/495107.html 在VR项目中,我们需要在用户"凝视"某个物体时将其激活.在VRSamples中,我们构建了一个简单的,可 ...

  2. Unity 创建2D平台游戏开发学习教程

    了解如何使用C#在Unity中创建您的第一款2D平台游戏 你会学到什么 使用Unity创建2D奥运会 使用可脚本化的对象和单一模式 使用良好的编程实践 创造武器和射弹 使用可脚本化的对象和委托模式创建 ...

  3. C#和Unity编码和游戏开发学习教程

    MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语言:英语+中英文字幕(根据原英文字幕机译更准确) |时长:110节课(26小时25分钟)|大小解压后:18.6 ...

  4. Unity4.x 2D游戏开发基础教程第1章Unity及其组成的介绍

    Unity4.x 2D游戏开发基础教程第1章Unity及其组成的介绍 本书主要讲解的是,如何使用Unity开发2D游戏.但在开始讲解之前,最好先熟悉一下Unity这个工具.本章会首先介绍Unity的下 ...

  5. Unity 4.x 2D游戏开发基础教程大学霸第一更

    Unity 4.x 2D游戏开发基础教程 大学霸 第1章  Unity及其组成的介绍 本书主要讲解的是,如何使用Unity开发2D游戏.但在开始讲解之前,最好先熟悉一下Unity这个工具.本章会首先介 ...

  6. unity2d游戏开发系列教程:二、新建工程并熟悉Unity编辑器常用功能

    目录 unity2d游戏开发系列教程:一.环境安装 第一步.打开项目 耐心等待一小会 工程界面 第二步.创建第一个场景(第一关)进行试玩 点击图中标号1的运行按钮,即可简单试玩感受,操作如下 移动A, ...

  7. 虚幻引擎VR游戏开发基础教程

    虚幻引擎VR游戏开发基础教程 了解如何使用 Oculus Quest 2 的蓝图在虚幻引擎 4 中从头开始构建基本的 VR 机制 课程英文名:Unreal Engine VR Development ...

  8. unity2d游戏开发系列教程:四、一个2D游戏所需要的主要功能(游戏框架)

    目录 unity2d游戏开发系列教程:一.环境安装 unity2d游戏开发系列教程:二.新建工程并熟悉Unity编辑器常用功能 unity2d游戏开发系列教程:三.场景布置,增加怪物和机关 原文下载 ...

  9. Swift游戏开发实战教程(大学霸内部资料)

    Swift游戏开发实战教程(大学霸内部资料) 试读下载地址:http://pan.baidu.com/s/1sj7DvQH 介绍:本教程是国内第一本Swift游戏开发专向资料. 本教程详细讲解记忆配对 ...

最新文章

  1. 天数换算月份_Js 计算指定月份的天数
  2. 【Zookeeper】windows环境下zookeeper安装
  3. php+MySql注入非暴力爆字段名
  4. Sublime Text插件列表
  5. C语言过时了吗?不,我们需要的是一份个人成长
  6. 飞鸽传书内部排序算法的性能比较
  7. Hadoop 生态系列之 HDFS
  8. Google对Gmail的所有通信进行SSL加密
  9. linux rpm找不到命令_linux书后习题(4-9章不全) - lijinli
  10. 剑指offer之变态跳台阶
  11. c#异步文件传输功能
  12. Springboot接收ajax提交JSON数组
  13. 简单爬虫 爬取百度图片并批量重命名
  14. 四 树莓派系统配置及进入图形桌面
  15. uni-app项目Android离线打包UrlSchemes设置
  16. cocos2d-x 全面总结--字体描边和制作阴影
  17. 2000门课程名称翻译大全,写英文简历时用得着的
  18. 华为帐号“一号畅玩”体验,助力游戏用户增长
  19. 注入工具 -- DSSS
  20. Vue中的export和export default{}用法

热门文章

  1. 【演歌】加賀の女 歌词翻译
  2. javascript 红黑树算法与说明
  3. 改造我们的win10桌面
  4. 2022-2028全球肿块破碎机行业调研及趋势分析报告
  5. html移动端选择器插件,原生js实现移动端选择器插件
  6. image 多图片页面的优化方式
  7. 一、Docker 简介与安装
  8. Smobiler 仿脉脉APP个人主页
  9. mysql 改表名锁表_mysql修改字段防止锁表
  10. python指定图片区域实现图片相似度对比