【Unity/Playmaker】コントローラーを別のモデルに変更する

この記事では、コントローラーへアクセスし、コントローラーのモデルを別のモデルへ変更する手順について解説します。 コントローラーの設定へアクセスするには、まず playmaker hierarchy の中に空のゲームオブジェクトを作成します。 こちらに関するチュートリアル記事があるので、ぜひ参照してください。 その後、FSMに” gunController_R”というステートを追加してください。

  • チュートリアルに従い、find game objectのアクションを利用しコントローラーの座標位置と回転を取得します
  • 座標位置を取得したら、その値を保存するための変数を作成します

同じく、“Get rotation”アクションで回転情報を取得したら、値を保存するための変数を作成します。 次に、銃として使用する3Dモデル“SciFiHand”を今回のシーンへ追加してください。もちろん、他のモデルでも問題ありません。次に、sphereをchild objectとしてSciFiHandの前へ設置し、スポーンポイントとして設定します。その後、見える必要はないのでメッシュレンダラーのチェック外しましょう。今回このsphereのメッシュは必要なく、あくまでスポーンポイントとしての機能がほしいためです。スポーンポイントとは、銃から発射された銃弾が生成され発射される位置のことです。 そして、“create game object”アクションを使用し、変数を使用して座標位置と回転情報を設定します。

  • 次に、”Set Parent”アクションを作成し、コントローラーを“SciFiHand”の親として設定します。“SciFiHand”をコントローラーの子とすることで、“SciFiHand”は常にコントローラーと共に動き回るようになります。そして、“Get Child”アクションを追加し“SciFiHand”のオブジェクト、“spawnPointSphere”を設定します。
  • コントローラーの値をすべて保存したら、ここでコントローラーprefabを破壊します。このためには、コントローラーのモデルを破壊することが必要です。そのため、“Destroy”オブジェクトアクションを追加しました。

このシーンでは、この銃は撃つことに使用されています。 ですが、コントローラーの対応が終わり、今後はどんなタスクでもでも行うことができるようになります。私はSTYLYへモデルをアップロードし、HTC Viveでコントローラーが銃となっていることも確認しました。 一連の流れをビデオで解説しています。参考になれば幸いです。 ビデオチュートリアルをURDU またはHINDIでみたい方は、

こちらをご覧になってください。