VR:Unity空間内をDayDreamコントローラーで歩く5(できました!)

Contents

今日は、キーボードからではなくて、デイドリームコントローラーからの入力を受け取るように改造していきます(´・ω・)

かなり前にSummonFunc()を作ったときにやったのを思い出しながらやってみます。

条件式:if (GvrControllerInput.ClickButtonDown) でコントローラーのボタンがクリックされたことを認識したときに、関数SummonFunc()を実行しています。

関数SummonFunc()は任意のオブジェクトを任意の座標と向きを定義してヒエラルキーに追加(Instantiate)する内容になっています。

変更しましょう:

Gvrのメソドを利用していきましょう。

GvrControllerInput.以下のメソド

  1. AppButtonDown     : アプリケーションボタンを押したとき
  2. HomeButtonDown : ホームボタンを押したとき
  3. ClickButtonDown   : タッチパッドボタンを押したとき
  4. TouchDown               : タッチパッドに触れたとき
  5. TouchPos                    : タッチパッドに触れている位置(Vector2)

if(GvrControllerInput.TouchDown)

  • tpX=0.5,tpY=0.5が中心で
  • 前進はtpY<0.3のときにしよう
  • 後退はtpY>0.7のときにしよう
  • 右を向くのはtpX>0.7のときにしよう
  • 左を向くのはtpX<0.3のときにしよう

もっといい方法があるかもしれないが、まずはこれでやってみよう。

スクリプト:PlayerMover2.cs

デイドリームコントローラーで動きました(´・ω・)

まだまだ、改良は必要ですが、とりあえず動くものはできました。

かれこれ、2日まるまるかかってしまいましたが、大きな前進です!

起動直後になぜか、カメラが動いてしまいます。

後日調整が必要です。