• 10.高通 Vuforia for Unity 虚拟按钮 (包教会教程,学不会你砍我)


    一 、 要想写自己的 , 先理解官方的列子。 

         因为上传图片出现问题,现在我简单说一下下载官方的Samples, Resources 里面就可以找到,点击右侧的 Virtual Buttons ,找到它的Demo下载下来。

         注意是Unity文件,因为我们是在Unity上面生成的APK嘛...

    二 、导入到Unity 中查看例子是如何写的。

        Import Custompackage  导入我们刚才下载下来的文件。然后就能看到了。点击资源文件里,Assets 能看到 Virtual Buttons 场景,可以看到里面有两个识别卡片。 有一个足球,还有一个就是用虚拟按钮换茶壶贴图的,点击这个的ImageTarget右侧检视面板上能显示各参数,往下拉,找到它的

    Virtual Button Event Handler 对于虚拟按钮的监听事件全在于此,同时你也可以控制以前我写过的文章中的声音、动画、等。GUI按钮做到的东西,虚拟按钮一样能帮你做到。
     这里我用的是虚拟按钮控制动画播放。下面是核心代码。

     

     

     

     1 using UnityEngine;
     2 using System.Collections.Generic;
     3 
     4 public class VBteapot : MonoBehaviour,
     5                                          IVirtualButtonEventHandler
     6 {
     7 
     8     void Start()
     9     {
    10         VirtualButtonBehaviour[] vbs = GetComponentsInChildren<VirtualButtonBehaviour>();
    11         for (int i = 0; i < vbs.Length; ++i)
    12         {
    13             vbs[i].RegisterEventHandler(this);
    14         }
    15 
    16       
    17     }
    18 
    19 
    20     public void OnButtonPressed(VirtualButtonBehaviour vb)
    21     {
    22         Debug.Log("OnButtonPressed");
    23 
    24                 switch (vb.VirtualButtonName)
    25             {
    26                case "VB1":
    27                 
    28             //   mActiveMaterials.Add(m_TeapotMaterials[0]);
    29             GameObject.Find("ARdemo1").transform.animation.wrapMode=WrapMode.Loop;
    30             GameObject.Find("ARdemo1").transform.animation.Play("bike");
    31                 break;
    32 
    33             case "VB2":
    34                 GameObject.Find("ARdemo1").transform.animation.wrapMode=WrapMode.Loop;
    35                 GameObject.Find("ARdemo1").transform.animation.Stop("bike");
    36                 break;
    37             }
    38     }
    39 
    40     public void OnButtonReleased(VirtualButtonBehaviour vb)
    41     {
    42        
    43     }
    44 
    45 }

    如果你会让模型变大小,那你就会让虚拟按钮变大小了。还能控制它移动位置。这一点如果不会说明你没有看我前面写的文章。
    到此结束。

     

  • 相关阅读:
    ubuntu下编译安装uWebSockets
    centos7安装python3
    linux设置库文件加载包含路径
    centos7安装mysql和mysql-connector-c++
    SVN查看提交日志的命令
    [转]select模型的一种技巧运用-libevent
    一道题回顾计算机数值存储方式-原码,反码,补码
    msyql判断记录是否存在的三种方法
    windows下vs2013使用C++访问redis
    linux下查看端口的连接数
  • 原文地址:https://www.cnblogs.com/kenzi/p/3401072.html
Copyright © 2020-2023  润新知