Unity3D-虚拟按键小游戏

实现要求

1、 图片识别与建模
2、 虚拟按键小游戏

实现过程

AR SDK的下载安装

到Vuforia官网上下载并安装Vuforia的sdk包
在这里插入图片描述
创建Unity3D项目,file->buidl setting
Unity3D-虚拟按键小游戏_第1张图片
player settings
Unity3D-虚拟按键小游戏_第2张图片
创建证书,用于获取License Key。Vuforia在Unity中需要相应的Key对SDK进行配置,否则无法使用。
创建证书点击Get Development Key,下面是管理已经创建的证书

Unity3D-虚拟按键小游戏_第3张图片
创建数据库,用来制作可识别的图片
点击Add Database,下面是管理已经创建的数据库
Unity3D-虚拟按键小游戏_第4张图片
为数据库起一个名字,选择默认Device
Unity3D-虚拟按键小游戏_第5张图片
载入识别图片
Unity3D-虚拟按键小游戏_第6张图片

游戏制作

添加AR Camera、ImageTarget
Unity3D-虚拟按键小游戏_第7张图片
在Resource里找到VuforiaConfiguration,在 Inspector 面板中选中 Global 项,将网站上的证书复制到App License Key
Unity3D-虚拟按键小游戏_第8张图片
Unity3D-虚拟按键小游戏_第9张图片
选择游戏素材,在Asset Store里选合适的或者自己制作都可以,最好选简单一点的带有animation的,将预制添加到ImageTarget下面,并修改ImageTarget的Behavior组件属性
在这里插入图片描述
Unity3D-虚拟按键小游戏_第10张图片
添加Virtual Button,在ImageTarget的Inspector面板中点击Advanced,展开后点击Add Virtual Button按钮,并为其添加一样位置一样大小的plane对象。(注意这里一定要保证Virtual Button的位置在你识别的那张图象里面,不然点击也没用)
Unity3D-虚拟按键小游戏_第11张图片
在这里插入图片描述
设置动画状态机,这里我设置的比较简单,就是在walk和idle两个状态切换,点击按钮切换到walk
Unity3D-虚拟按键小游戏_第12张图片

代码

using UnityEngine;
using Vuforia;
[System.Obsolete]
public class VirtualButtonEventHandler : MonoBehaviour, IVirtualButtonEventHandler
{


    public VirtualButtonBehaviour vb;
    public Animator animator;
    void IVirtualButtonEventHandler.OnButtonPressed(VirtualButtonBehaviour vb)
    {
        animator.SetBool("walk", true);
        Debug.Log("walk");
    }

    void IVirtualButtonEventHandler.OnButtonReleased(VirtualButtonBehaviour vb)
    {
        animator.SetBool("walk", false);
        Debug.Log("stop");
    }

  
    void Start()
    {
        VirtualButtonBehaviour vbb = vb.GetComponent<VirtualButtonBehaviour>();
        if (vbb)
        {
            vbb.RegisterEventHandler(this);
        }
    }


    void Update()
    {

    }

}

将其挂载到ImageTarge上
Unity3D-虚拟按键小游戏_第13张图片

效果截图

Unity3D-虚拟按键小游戏_第14张图片

代码和演示视频

项目地址
演示视频

你可能感兴趣的:(作业)