Vuforia AR篇(四)— AR虚拟按钮

目录


前言

在当今互联网和移动设备普及的背景下,**增强现实(AR)**技术正迅速成为连接现实世界与数字信息的重要桥梁。AR虚拟按钮作为这一技术的创新应用,不仅提供了一种全新的用户交互方式,还极大地提高了界面的直观性和操作的便捷性。本文将介绍AR虚拟按钮的使用。


一、创建虚拟按钮

创建ARCamera和ImageTarget

导入一个带动画的模型

创建虚拟按钮

给按钮name添加名字

取消Turn Off Behaviour 脚本,显示按钮mesh Renderer组件方便测试,勾选会删除mesh Renderer组件组件

经过测试虚拟按钮的位置应在如下图所示90%以内的范围

二、创建脚本

csharp 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia;

public class VirtualButtonClick : MonoBehaviour
{

    public bool _isEffect;
  
    public GameObject death;
    public GameObject effect;

    public VirtualButtonBehaviour[] buttons;
    public virtual 
    void Awake()
    {
        _isEffect = false;
        buttons = GetComponentsInChildren<VirtualButtonBehaviour>();
        for (int i = 0; i < buttons.Length; i++)
        {
            if (buttons[i].VirtualButtonName=="Left")
            {
  
                buttons[i].RegisterOnButtonPressed(PressLeft);
            }
            else if(buttons[i].VirtualButtonName=="Right")
            {

                buttons[i].RegisterOnButtonPressed(PressRight);
            }
            else if (buttons[i].VirtualButtonName=="Effect")
            {
                buttons[i].RegisterOnButtonPressed(PressEffect);
            }

        }
    }

    private void PressLeft(VirtualButtonBehaviour obj)
    {
        death.transform.Rotate(Vector3.up,-2);

    }
    private void PressRight(VirtualButtonBehaviour obj)
    {
        death.transform.Rotate(Vector3.up,2);
    }

    private void PressEffect(VirtualButtonBehaviour obj)
    {
        _isEffect = !_isEffect;
        effect.SetActive(_isEffect);
    }

    void Start ()
    {

    }
	
    void Update ()
    {

    }
}

把脚本挂在ImageTarget上

三、效果

相关推荐
超龄魔法少女8 小时前
[Unity] ShaderGraph动态修改Keyword Enum,实现不同效果一键切换
unity·技术美术·shadergraph
蔗理苦9 小时前
2024-12-24 NO1. XR Interaction ToolKit 环境配置
unity·quest3·xr toolkit
花生糖@9 小时前
Android XR 应用程序开发 | 从 Unity 6 开发准备到应用程序构建的步骤
android·unity·xr·android xr
向宇it10 小时前
【从零开始入门unity游戏开发之——unity篇02】unity6基础入门——软件下载安装、Unity Hub配置、安装unity编辑器、许可证管理
开发语言·unity·c#·编辑器·游戏引擎
向宇it14 小时前
【从零开始入门unity游戏开发之——unity篇01】unity6基础入门开篇——游戏引擎是什么、主流的游戏引擎、为什么选择Unity
开发语言·unity·c#·游戏引擎
向宇it20 小时前
【从零开始入门unity游戏开发之——C#篇26】C#面向对象动态多态——接口(Interface)、接口里氏替换原则、密封方法(`sealed` )
java·开发语言·unity·c#·游戏引擎·里氏替换原则
神码编程1 天前
【Unity功能集】TextureShop纹理工坊(五)选区
unity·游戏引擎·shader·ps选区
m0_748251721 天前
Android webview 打开本地H5项目(Cocos游戏以及Unity游戏)
android·游戏·unity
benben0441 天前
Unity3D仿星露谷物语开发7之事件创建动画
unity·游戏引擎
林枫依依1 天前
Unity2021.3.16f1可以正常打开,但是Unity2017.3.0f3却常常打开闪退或者Unity2017编辑器运行起来就闪退掉
unity