欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

3D_HW11

程序员文章站 2022-04-07 17:30:40
...

3D Programming & Design

实现效果

3D_HW11
3D_HW11

实现过程

Vuforia使用

  1. 进入官网https://developer.vuforia.com注册登录账号
    3D_HW11

  2. 点击Develop, 进行License Key的获取
    3D_HW11
    3D_HW11

  3. 点击Target Manager, 添加数据库
    3D_HW11

  4. 点击Add Target, 我们使用Single Image来进行AR识别
    3D_HW11
    3D_HW11

  5. 将数据库中的特定文件下载下来
    3D_HW11
    3D_HW11

  6. 将unitypackage导入unity中
    3D_HW11

  7. 确保unity中有vuforia SDK, 没有的话可以在Unity Hub beta中进行添加
    3D_HW11

  8. 添加AR相机
    3D_HW11

  9. 在VuforiaConfiguration中添加License Key
    3D_HW11

  10. 添加ImageTarget, 并将AssetStore中下载的模型挂载到ImageTarget下, 作为子物体
    3D_HW11

  11. 在ImageTarget的Inspector面板中调整模型与Image的尺寸, 以方便显示.
    3D_HW11

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

虚拟按键小游戏

我们在上面的基础上增加一个Launch虚拟按钮, 触碰虚拟按钮后让Rocket升空.
右键点击ImageTarget, 在Inspector中选择Add VirtualButton
3D_HW11
在Virtual中挂载子物体Plane
3D_HW11
编写代码控制相应的动画
3D_HW11

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<VirtualButtonBehaviour>();
        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

相关标签: 游戏

推荐阅读