コントローラー入力の取得について
UI POINTER CLICK
イベント を利用したクリック判定について
- こちらの方法は、簡単な手法でプラットフォームを問わず動作するのでおすすめです。
- VR版STYLYアプリでは、コントローラーの先にポインターの軌跡が伸びて物体をクリックできます。
- STYLY Galleryのプレイヤーやスマホ版では、物体をマウスでクリックしたりタップすることで動作させることができます。
- ウェブ版Studioでは動作しません。
- 手順
- コライダーを持ったGameObject (たとえば、UnityのCubeやSphereなど) を用意します。
- 同じGameObjectに PlayMakerFSM コンポーネントを追加します。
- FSM編集画面で
Add Global Transition
メニューから、UI POINTER CLICK
イベントが発生した場合の遷移を追加します。 - アップロード前にUnityでテストするときは、Unityシーン内の Main Camera に PhysicsRaycaster コンポーネントを追加し、またシーン内に EventSystem を配置すると、Unityのプレイモードでも動作します。
コントローラーボタンイベント
VR向けSTYLYアプリでは、下記PlayMakerグローバルイベントがSTYLYに組み込まれています。各操作により対応するイベントが発火されるので、これらのイベントを使ってステートを遷移させることができます。 ウェブ版Studioや、STYLY Galleryのプレイヤー、およびスマホ用STYLYアプリでは利用できません。
左コントローラー(L)、右コントローラー(R)の、グリップボタン、メニューボタン、タッチパッド、トリガーについて、押し込んだ時(PressDown)と戻した時(PressUp)のイベントが発火します。
トリガーとタッチパッドについては、触った時 (TouchDown)、離した時 (TouchUp) のイベントも発火します。
以下の名前を持ったイベントを作成することで利用できます。
- トリガーボタン
Global_TriggerPressUp_L
Global_TriggerPressDown_L
Global_TriggerPressUp_R
Global_TriggerPressDown_R
Global_TriggerTouchUp_L
Global_TriggerTouchDown_R
Global_TriggerTouchUp_R
Global_TriggerTouchDown_L
- タッチパッド
Global_TouchpadPressUp_L
Global_TouchpadPressDown_R
Global_TouchpadPressUp_R
Global_TouchpadPressDown_L
Global_TouchpadTouchUp_L
Global_TouchpadTouchDown_L
Global_TouchpadTouchDown_R
Global_TouchpadTouchUp_R
- グリップボタン
- Global_GripPressUp_L
- Global_GripPressDown_L
- Global_GripPressDown_R
- Global_GripPressUp_R
- メニューボタン
- Global_MenuPressUp_L
- Global_MenuPressDown_L
- Global_MenuPressUp_R
- Global_MenuPressDown_R
- トリガーボタン
注意点
- VRデバイスによって利用できないイベントがあります。Mirage Solo や Oculus Go では左右どちらかのコントローラーしかないことにも注意してください。
- メニュー表示時などでもイベントが発火するため、誤動作しないように注意してご利用ください。