3D游戏设计HW12-AR/MR技术
程序员文章站
2022-07-13 08:30:02
...
1、 图片识别与建模
AR SDK下载
官网
下载结束之后将VuforiaSupportInstalller
安装到Unity的根目录
创建证书,获取License Key
创建目标数据库
用于对所有Target及其特征数据进行管理和保存
添加好的target,点击DownloadDatabase
下载unity扩展包并导入项目
创建AR Camera,添加License Key
右侧create
->Vuforia Engine
->选择添加AR Camera
Inspector
->Open Vuforia Engine configuration
->添加License Key
这步开始的时候遇到了无法选择Open Vuforia Engine configuration
对应解决办法:
参考链接
添加Image Target
删除原有Main Camera,AR Camra下面添加一个Camera
,下载好的皮卡丘模型挂载到Image Targe
t下,并在Image Target Behaviour
添加我们刚刚下好的数据库(3D_course)
图像识别结果
2、 虚拟按键小游戏
增加虚拟按键
Advanced
->Add Virtual Button
创建脚本
对IVuforiaButtonEventHandler
接口进行实现,以对虚拟按钮的按下与释放事件进行监听并处理,挂载到ImageTarget
下并对变量进行指定
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia;
public class VirtualButtonEventHandler : MonoBehaviour, IVirtualButtonEventHandler
{
// virtual button
public GameObject vb;
//动画组件
public Animator ani;
void IVirtualButtonEventHandler.OnButtonPressed(VirtualButtonBehaviour vb)
{
ani.SetTrigger("Take Off");
Debug.Log("按钮按下!");
}
void IVirtualButtonEventHandler.OnButtonReleased(VirtualButtonBehaviour vb)
{
ani.SetTrigger("Land");
Debug.Log("按钮释放!");
}
// Start is called before the first frame update
void Start()
{
VirtualButtonBehaviour vbb = vb.GetComponent<VirtualButtonBehaviour>();
if(vbb)
{
vbb.RegisterEventHandler(this);
}
}
// Update is called once per frame
void Update()
{
}
}
将Vuforia的
Virtual button
预制体挂载到ImageTarget
下作为子对象,同时调整至合适大小和位置。为了使虚拟按钮可见,可以在按钮下添加相应大小的平面并附着材质
上一篇: 分布式消息中间件MetaQ发布1.4.5
下一篇: 3D游戏作业10 AR/MR 技术