3D_HW11

3D Programming & Design

  • Date: 2019/12/18

  • 实现效果

  • 实现过程

    • Vuforia使用
    • 虚拟按键小游戏

实现效果

视频网址: http://www.iqiyi.com/w_19sb508uvx.html
3D_HW11_第1张图片
3D_HW11_第2张图片

实现过程

Vuforia使用

  1. 进入官网https://developer.vuforia.com注册登录账号
    3D_HW11_第3张图片

  2. 点击Develop, 进行License Key的获取
    3D_HW11_第4张图片
    3D_HW11_第5张图片

  3. 点击Target Manager, 添加数据库
    3D_HW11_第6张图片

  4. 点击Add Target, 我们使用Single Image来进行AR识别
    3D_HW11_第7张图片
    3D_HW11_第8张图片

  5. 将数据库中的特定文件下载下来
    3D_HW11_第9张图片
    3D_HW11_第10张图片

  6. 将unitypackage导入unity中
    3D_HW11_第11张图片

  7. 确保unity中有vuforia SDK, 没有的话可以在Unity Hub beta中进行添加
    在这里插入图片描述

  8. 添加AR相机
    在这里插入图片描述

  9. 在VuforiaConfiguration中添加License Key
    3D_HW11_第12张图片

  10. 添加ImageTarget, 并将AssetStore中下载的模型挂载到ImageTarget下, 作为子物体
    3D_HW11_第13张图片

  11. 在ImageTarget的Inspector面板中调整模型与Image的尺寸, 以方便显示.
    3D_HW11_第14张图片

  12. 运行项目, 将数据库中的图片放置到摄像头下, 得到AR效果
    3D_HW11_第15张图片

虚拟按键小游戏

我们在上面的基础上增加一个Launch虚拟按钮, 触碰虚拟按钮后让Rocket升空.
右键点击ImageTarget, 在Inspector中选择Add VirtualButton
3D_HW11_第16张图片
在Virtual中挂载子物体Plane
在这里插入图片描述
编写代码控制相应的动画
3D_HW11_第17张图片

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia;

public class VirtualButton : MonoBehaviour, IVirtualButtonEventHandler {
    public VirtualButtonBehaviour[] actions;
    public Animator animator;

    void Start() {
        actions = GetComponentsInChildren();
        for (int i = 0; i < actions.Length; i++) {
            actions[i].RegisterEventHandler(this);
        }
    }

    public void OnButtonPressed(VirtualButtonBehaviour vb) {
        animator.SetTrigger("Launch");
        animator.ResetTrigger("Idle");
    }

    public void OnButtonReleased(VirtualButtonBehaviour vb) {
        animator.SetTrigger("Idle");
        animator.ResetTrigger("Launch");
    }
}

实现效果
github地址: https://github.com/boluoDhai/3D_HW11

你可能感兴趣的:(游戏,unity)