最新版の.unitypackageをプロジェクトにインストールします。Projectタブにファイルをドラッグアンドドロップし、すべての項目にチェックが入れられていることを確認してImportします。
「Player」という名前でCubeの3Dオブジェクトを作成し、「Move」というPlayerを動かすためのスクリプトを新規作成します。
「Avater」という空オブジェクトをPlayerの子オブジェクトとして作成し、Avaterコンポーネントを取り付けます。顔サイズの項目の値を「0.1」にします。
ここまで作成したPlayerオブジェクトを、Assets内にドラッグアンドドロップしPrefab化します。
これでプレイヤーをスクリプトから動的生成できるようになります。
コードエディタを開き、先ほど作成したMoveスクリプトに処理を記述します。
パブリックメンバ変数「float x」の値に応じて毎フレーム左右に移動するという処理になります。
シーンに適当なオブジェクトを生成し、マネージャースクリプト(この場合名前は「GameManager」)を新規作成します。
TEWOの機能を用いるため、usingで名前空間「TEWO」を指定し、インタフェース「IReceivable」を継承します。
TEWO.PlayerSettingsインスタンスの人数を格納する変数(int _player)を参照し、人数分のプレイヤーを生成します。
プレイヤーからそれぞれのMoveスクリプトを取得し、メンバ変数のMoveリストにAddで格納します。
IReceivableインタフェースに実装されたOnReceiveメソッドを記述します。
OnReceiveメソッドは、「QRがモニタから読み取られた瞬間に」実行されます。引数には対応するQRのデータなどが格納された「PlayerData」クラスが割り当てられています。
今回はMoveリストのx変数に、引数のQRのx座標(data.QR.x)を代入します。
TEWOPlayerのPlay関数を実行することで、QR読み取りなどの総合的な処理が開始されます。
今回は左クリックで処理を開始しています。また、処理を中断したいタイミングでStop関数を記述すると一時停止ができます。
TEWOフォルダのPrefabsから、TEWO_PlayerとTEWO_SettingsのPrefabをシーンに配置します。
TEWO_PlayerにアタッチされているQRReaderスクリプトのTargetGameObjectに、GameManagerスクリプトがアタッチされているゲームオブジェクトを指定します。
別モニターにUnityCaptureの画面を映し、PlayerSettingsから人数設定などを行った上でエディタを実行します。
実行状態で左クリックするとアクションが開始され、顔の動きに応じてPlayerオブジェクトが左右に動くようになります。