UnityとHydraでMMDモデルの髪やスカートに触る
以下の記事でLeap MotionでMMDモデルに触る方法が紹介されていたので、Hydraでやってみました。
なお、UnityのFree版ではうまく動かなかったので30日試用版を使っています。
Hydraの手とMMDモデルの準備
「Asset Store」から「Sixense Unity Plug-in」をインポートし、「SixenseInput/DemoScenes/SixenseHands.unity」のシーンを開きます。
ここにMMD4Mecanimを使用してMMDのモデルをインポートします。インポート手順は以下のチュートリアルのとおりです。(「シーンへのオブジェクトの配置」まで)
今回は以下のモデルを使用しました。
インポートできたらモデルのサイズや位置を調整しておきます。
これで素材は揃いましたが、このまま実行してもHydraの手はMMDモデルをすり抜けてしまい、触ることができません。
HydraでMMDモデルに触るための設定
MMDモデルに触るためには、MMD4Mecanimの以下のドキュメントで説明されている機能を使用します。
MMDモデル側の設定で「Physics Engine」の項目を「None」から「Bullet Physics」に変更し、「Join Local World」のチェックを外します。
Hydraのデモ用の手には衝突用のオブジェクトが設定されていないので、とりあえず適当なCubeを追加して使います。
メニューから「GameObject」→「Create Other」→「Cube」で立方体を作り、サイズと位置を調整して「HandsController」の「Hand - Right」と「Hand - Left」配下に入れます。「Mesh Renderer」のチェックを外せばボックスは見えなくなります。
Cubeを選択した状態で、「Add Component」から「Scripts」→「MMD4Mecanim Rigid Body」を選択してスクリプトを追加します。
以上で設定は完了です。
実行
Hydraを接続して実行すると、髪やスカートに触ってインタラクションをとることができます。
関連記事
- Oculus Riftで遊ぶ
- 岡嶋二人「クラインの壺」 究極のVRの先にあるもの
- MMDでモーションを再生する
- MMMでモーションを再生する
- UnityでMMDのモデルとモーションを読み込む
- Unity Free版でRazer Hydraを使う
- Unity Free版でOculus Riftを使う
- UnityとHydraでMMDモデルの髪やスカートに触る