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 }

如果你會讓模型變大小,那你就會讓虛擬按鈕變大小了。還能控制它移動位置。這一點如果不會說明你沒有看我前面寫的文章。
到此結束。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM