Я сделал виртуальную кнопку для дополненной реальности с Vuforia:Vuforia имена не найдены
using UnityEngine;
using System.Collections.Generic;
public class VBGordangDuaEventHandler : MonoBehaviour, IVirtualButtonEventHandler
{
#region PUBLIC_MEMBER_VARIABLES
/// <summary>
/// The materials that will be set for the teapot model
/// </summary>
public Material[] m_TeapotMaterials;
public AudioSource VBgordangduahitam;
public AudioSource VBgordangduamerah;
#endregion $3$
#region PRIVATE_MEMBER_VARIABLES
private GameObject mTeapot;
private List<Material> mActiveMaterials;
#endregion $4$
#region UNITY_MONOBEHAVIOUR_METHODS
void Start()
{
// Register with the virtual buttons TrackableBehaviour
VirtualButtonBehaviour[] vbs = GetComponentsInChildren<VirtualButtonBehaviour>();
for (int i = 0; i < vbs.Length; ++i)
{
vbs[i].RegisterEventHandler(this);
}
// Get handle to the teapot object
// mTeapot = transform.FindChild("teapot").gameObject;
// The list of active materials
mActiveMaterials = new List<Material>();
}
#endregion $9$
#region PUBLIC_METHODS
/// <summary>
/// Called when the virtual button has just been pressed:
/// </summary>
public void OnButtonPressed(VirtualButtonAbstractBehaviour vb)
{
Debug.Log("OnButtonPressed::" + vb.VirtualButtonName);
/*if (!IsValid())
{
return;
}*/
// Add the material corresponding to this virtual button
// to the active material list:
switch (vb.VirtualButtonName)
{
case "VBgordangduahitam":
Debug.Log ("gordangduahitam");
suaragordangduahitam.Play();
break;
case "VBgordangduamerah":
Debug.Log ("gordang2merah");
suaragordangduamerah.Play();
break;
}
// Apply the new material:
/*if (mActiveMaterials.Count > 0)
mTeapot.renderer.material = mActiveMaterials[mActiveMaterials.Count - 1];*/
}
/// <summary>
/// Called when the virtual button has just been released:
/// </summary>
public void OnButtonReleased(VirtualButtonAbstractBehaviour vb)
{
if (!IsValid())
{
return;
}
// Remove the material corresponding to this virtual button
// from the active material list:
switch (vb.VirtualButtonName)
{
case "red":
mActiveMaterials.Remove(m_TeapotMaterials[0]);
break;
case "blue":
mActiveMaterials.Remove(m_TeapotMaterials[1]);
break;
case "yellow":
mActiveMaterials.Remove(m_TeapotMaterials[2]);
break;
case "green":
mActiveMaterials.Remove(m_TeapotMaterials[3]);
break;
}
// Apply the next active material, or apply the default material:
/*if (mActiveMaterials.Count > 0)
mTeapot.renderer.material = mActiveMaterials[mActiveMaterials.Count - 1];
else
mTeapot.renderer.material = m_TeapotMaterials[4];*/
}
private bool IsValid()
{
// Check the materials and teapot have been set:
return mTeapot != null;
}
#endregion $35$
Почему я получаю следующие ошибки?
?1): CS0246 Ошибка: тип или пространство имен имя 'IVirtualButtonEventHandler' не может быть найден (вы пропали без вести с помощью директивы или ссылка на сборку) (CS0246) (сборочно-CSharp)
2?): Ошибка CS0246: Не удалось найти имя типа или пространства имен «VirtualButtonAbstractBehaviour» (вам не хватает директивы использования или ссылки на сборку?) (CS0246) (Assembly-CSharp)
3): Ошибка CS0246: Тип или имя пространства имен «VirtualButtonAbstractBehaviour» не удалось найти (вам не хватает директивы использования или ссылки на сборку?) (CS0246) (Assembly-CSharp)
4): CS0246 Ошибка: тип или пространство имен имя 'VuforiaBehaviourComponentFactory' не может быть найден (вы пропали без вести с помощью директивы или ссылка на сборку) (CS0246) (сборочно-CSharp-редактор)
Как я могу устранить эти ошибки?
Как ошибка говорит ... Возможно, у вас есть некоторые ссылки на DLL Vuforria в вашем проекте. Вы должны убедиться, что они добавлены –