Playmakerはヴィジュアルスクルプティングを用いてコードを書かずにUnityで開発を行うことができる便利なアセットです。Playmakerに対応しているアセットも多く公開されていて、多種多様なことがノンコーディングで実現できるようになってきています。
今回は、HTC VIVE用のコントローラーをPlaymakerから利用できるアセットと、使い勝手を良くするための方法をメモしておきます。
下記3つのアセットをインポートします。
Playmaker (有料)
Editor Extensions/Visual Scripting
SteamVR Plugin (無料)
Scripting
Steam VR Playmaker – Toolkit (有料)
Editor Extensions/Game Toolkits
これで、SteamVRの機能がPlaymakerから利用できるようになります。
公式ドキュメントはこちら
ドキュメントを読んで実装するとこんな感じになります。
待受するステートが必要になるため使い勝手が良くありません。待ち受けるイベントの種類事に全部記述する必要がある。
そこでPlaymakerのGlobal Transition機能を利用してどこからでもトリガーやボタンのイベントを拾えるようにします。(この投稿最後でダウンロード可能)
Global Eventの登録
各ボタンが押された時にGlobal Eventを発火するように設定
これで準備完了
では、イベントが起こった際の動作を記述してみましょう。
FSM上に新しいStateを作成し、Add Global Transitionから登録したVIVE用のグローバルイベントを選択します。
こんな形で、メインのStateの遷移とは別に、コントローラーのイベントを起点に処理を走らせることができるので、処理の流れも記述もわかりやすくなりました。
FSMダウンロード
グローバルイベントを登録したFSMはこちらからダウンロードしてください。
利用するには上記でかいた有料のものを含む3つのアセットを予めインポートしておく必要があります。