VRIKでキャラクターを動かしてみた

Unity初心者がVRIKを使ってVtuberの真似事をしました。
VRIKとはHMDとコントローラーの位置からキャラクターの動きを生成してくれるUnity assetです。今回はVRIKのセットアップ方法を簡単にまとめてみました。
最終的にこんな感じになります。

使用環境

今回は以下のソフトウェア、機材を使用しました。

  • Unity 2017.3.1
  • FinalIK 1.7
  • SteamVR Plugin 1.2.3
  • HTC VIVE

操作手順

  1. Asset storeからSteamVR Plugin, Final IKをimportします
    今回使用するVRIKFinal IKの中に入っています
    SteamVR Plugin – Asset store
    Final IK – Asset store

  2. HierarchieのMain Cameraを削除します

  3. HierarchieにAssets/SteamVR/Prefabs/CameraRigを追加します

  4. CameraRig下のController(left), Controller(Right), Camera(head)にそれぞれ空のGameObjectを作成します
    GameObjectはHierarchieで右クリックし、Create Emptyで作成できます
    (このGameObjectの位置に動かしたいモデルの頭や手が追従するようになります)
    (名前は自由ですが、わかりやすいようにHand_L_Target, Hand_R_Target, Head_Targetなどにしておきます)

  5. 動かしたいモデルをCameraRigの子に追加します
    この時点で以下の画像のようにObjectが配置されていると思います
    (kuwamai_V4が僕が動かすために配置したモデルです)

  6. モデルにVRIKAdd Componentします
    Add Componentボタンを押すと検索欄が出るのでVRIKと入力すると表示されます

  7. VRIKのReferencesに対応するモデルのRigを設定します
    大抵は自動で読み込んでくれると思います

  8. VRIKのSolverSpine/Head Target, Left Arm/Target, Right Arm/Targetに手順4で作成した各Tagetを設定します

  9. セットアップは以上です
    HMD、コントローラーの位置にキャラクターが追従して動くことを確認してください
    ※手や頭の角度がおかしい場合は、TargetとしているGameObjectのTransform / Rotationを変更してください
    ※その他詳細な設定等は下記の参考サイトをご覧ください

参考にしたサイト