Как использовать код ключа KEYCODE_DPAD_CENTER в Unity
Я портирую приложение Unity на гарнитуру Android Vuzix M300, и кнопка выбора в верхней части устройства не работает в моем приложении Unity. Согласно странице поддержки Vuzix dev, он использует код ключа KEYCODE_DPAD_CENTER, который, как кажется, Unity не видит. Есть ли способ обойти это, поскольку нам нужно, чтобы эта кнопка работала в нашем приложении.
Я также попробовал KeyCode.JoystickButton0, KeyCode.Return, KeyCode.Enter, KeyCode.Menu, Input.GetButtonDown("Fire1"), KeyCode.Space...
Любая помощь по этому вопросу будет высоко ценится!
1 ответ
Благодаря ссылке, предоставленной derHugo, я пришел к такому решению:
public class VuzixSelectButton : MonoBehaviour
{
KeyCode DPAD_CENTER = (KeyCode)10;
void Update ()
{
VuzixSelect();
}
/// <summary>
/// Detects Vuzix M300 select button presses
/// </summary>
private void VuzixSelect()
{
if (SystemInfo.deviceModel.ToLower().Contains("vuzix"))
{
if (Input.GetKeyDown(DPAD_CENTER))
{
var es = EventSystem.current;
GameObject obj = es.currentSelectedGameObject;
ExecuteEvents.Execute(obj, new PointerEventData(EventSystem.current), ExecuteEvents.pointerClickHandler);
}
}
}
}