2015年5月4日月曜日

GearVRの入力を使う

GearVRにはタッチパッドとバックボタンの入力がついています。

Unityでタッチパッドの入力を取得するには
Input.GetMouseButton

を利用します。

座標を取得するには
Input.mousePosition

を利用します。
パッドのどの部分を触ってもまずはX:1280,Y:720の座標が返されます。
ドラッグで動かすと触った部分を起点として座標が変化します。
なのでタッチパッドのどの部分を触ったかという判定は取れないようです。
(といっても目隠し状態なので正確に狙った位置を触るのは元々無理そうですが)

タッチの開始を取得するには
Input.GetMouseButtonDown
タッチの終了を取得するには
Input.GetMouseButtonUp
を利用します。

バックボタンを取得するには
Input.GetKey(KeyCode.Escape)

を利用します。


確認用サンプルコード
using UnityEngine;
using System.Collections;

public class Main : MonoBehaviour {

 // Use this for initialization
 void Start () {
  Debug.Log ("GearVR test");
  Debug.Log ("ScreenSize:" + Screen.width + "," + Screen.height);
 }
 
 // Update is called once per frame
 void Update () {

  if(Input.GetMouseButton(0)){
   var mousePos = Input.mousePosition;
   Debug.Log ("mouse down:" + mousePos);
  }

  if(Input.GetMouseButtonUp(0)){
   var mousePos = Input.mousePosition;
   Debug.Log ("mouse up" + mousePos);
  }

  if (Input.GetKey(KeyCode.Escape)){
   Debug.Log ("escape");
  }
 }
}

デバッグ手法についてはこちらを参考にさせていただきました。
UnityでGear VR用アプリを作るなら知っておきたいデバッグ方法

0 件のコメント:

コメントを投稿