読者です 読者をやめる 読者になる 読者になる

モーリーのメモ

プログラミングやCG作成等、アプリ開発を中心に情報を収集中!

BVHファイル(モーションキャプチャデータ)をインポート!:Blender

 下記の記事で作成したモデルにBVHファイルのモーションキャプチャデータを適用します。
mmorley.hatenablog.com
 
 モーションキャプチャデータは、以前Perfumeが公開していたものを使用します。
 f:id:mmorley:20160401013927p:plain:w200
 上図は、華麗にステップを踏み出した瞬間です。

 モデリングはしょぼいですが、ボーンをモデルに設定する手順を説明しています。

使用環境

 私が使用している環境です。

作成方法

1.BVHファイルの入手

  1. 下記のリンクをクリック
    www.perfume-global.com
  2. 『DOWNLOAD』をクリック
    f:id:mmorley:20160330125852p:plain:w150
  3. 『#001 MOTION CAPTURE DATA』の『BVH』をクリック
    f:id:mmorley:20160330130220p:plain:w150
    『bvhfiles.zip』がダウンロードされます。
  4. 『bvhfiles.zip』をダブルクリックして解凍
    『bvhfiles』フォルダには下記のBVHファイルが含まれています。
    • aachan.bvh
    • kashiyuka.bvh
    • nocchi.bvh

2.Blenderを起動

  1. 『/Applications/Blender』を起動

3.『Emulate Numpad』を有効にする(テンキーがない場合)

 テンキーの代わりにフルキー側の数字キーを使用する設定です。

  1. キーボードの『command + ,(カンマ)』を押下
  2. 『Input』カテゴリの『Emulate Numpad』にチェックを入れる
    f:id:mmorley:20160330133644p:plain:w300
  3. 設定画面を閉じる

2.モデリングしたデータを読み込む

 下記の記事で、モデリングしたデータを使用します。
mmorley.hatenablog.com
 ここから作業する場合は下記のファイルを使用して下さい。

 リンク先のページ内の『Raw』を右クリックして『リンク先を別名で保存』をクリックするとダウンロードできます。

  1. 『File』-『Open』をクリック
  2. 上記のファイルを選択し、『Open Blender File』をクリック

3.BVHファイルをインポート

  1. 『File』-『Import』-『Motion Capture(.bvh)』をクリック
    f:id:mmorley:20160330220429p:plain:w300
  2. ダウンロード及び解凍してできたフォルダから『aachan.bvh』を選択し、『Import BVH』をクリック

4.全てのオブジェクトを表示

 インポートしたボーンはかなりサイズが大きいです。

  1. キーボードの『fn + ←(homeキーの代用)』を押して、全てのオブジェクトを表示
    f:id:mmorley:20160331175632p:plain:w300
    ボーンの足元にあるのが作成したモデルです。

5.ボーンが常に見えるようにする

  1. 画面右の『Properties』ウインドウの『Data』タブの『Display』の『X-Ray』にチェックを入れる
    f:id:mmorley:20160331203834p:plain:w200

6.作業が左右対称に反映されるようにする

  1. キーボードの『tab』を押して、『Edit Mode』にする
  2. 画面左の『Options』シェルフの『Armature Options』の『X-Axis Mirror』にチェックを入れる
    f:id:mmorley:20160331204700p:plain:w100

7.ポーズの解除

 さきほど『Edit Mode』に切り替えた時にボーンの位置が変わりましたが、これは『Object Mode』のボーンにポーズが付いているからです。
 作業がやりにくいのでポーズを解除します。尚、この操作でポーズを解除してもモーションデータ(アニメーション)には影響ありません。

  1. キーボードの『control + tab』を押して、『Pose Mode』にする
    f:id:mmorley:20160331202556p:plain
  2. キーボードの『a』を押して、全選択する
  3. キーボードの『option+ g』を押して、ボーンの位置を戻す
  4. キーボードの『option+ r』を押して、ボーンの回転を戻す
  5. キーボードの『option+ s』を押して、ボーンの拡大縮小を戻す

8.ボーンとモデルの中心から足(地面)までの距離を揃える

  1. キーボードの『fn + ←(homeキーの代用)』を押して、全てのオブジェクトを表示
  2. キーボードの『.(ピリオド、フルキー側)』を押して、ピボットポイントをカーソル位置にする
    カーソル位置を中心に拡大縮小するようになります。
  3. キーボードの『shift + s』→『r』の順に押して、カーソル位置を中心にする
  4. キーボードの『control + tab』を押して、『Object Mode』にする
  5. キーボードの『s』を押して、拡大縮小を開始
  6. マウスドラッグして、モデルとボーンのつま先(最下部の位置)を合わせる
  7. キーボードの『fn + ←(homeキーの代用)』を押して、全てのオブジェクトを表示
    f:id:mmorley:20160331231428p:plain:w300
  8. キーボードの『tab』を押して、『Edit Mode』にする
  9. キーボードの『a』を押して、選択を解除

9.足の長さを揃える

  1. つま先を右クリックで選択
  2. キーボードの『shift + s』→『u』の順に押して、カーソル位置をつま先にする
    f:id:mmorley:20160331231809p:plain:w200
  3. キーボードの『a』を押して、選択を解除
  4. キーボードの『a』を押して、全選択
  5. キーボードの『s』→『z』の順に押して、z方向に拡大縮小
  6. マウスドラッグして、ボーンとモデルの足の長さを同じにする
    f:id:mmorley:20160331232238p:plain:w300

10.足の幅を揃える

  1. 腰の付け根を右クリックで選択
  2. キーボードの『shift + s』→『u』の順に押して、カーソル位置を腰の付け根にする
    f:id:mmorley:20160331232610p:plain:w200
  3. キーボードの『b』を押して範囲選択を開始する
  4. マウスドラッグして、左脚を選択
  5. キーボードの『s』→『x』の順に押して、x方向に拡大縮小
  6. マウスドラッグして、ボーンの脚がモデルの脚の中心になるようにする
    f:id:mmorley:20160331232925p:plain:w300
  7. キーボードの『a』を押して、選択を解除

11.胴体の長さを揃える

  1. キーボードの『b』を押して範囲選択を開始する
  2. マウスドラッグして、上半身を選択
  3. キーボードの『s』→『z』の順に押して、z方向に拡大縮小
  4. マウスドラッグして、ボーンの腕がモデルの腕の中心になるようにする
    f:id:mmorley:20160331233333p:plain:w300
  5. キーボードの『a』を押して、選択を解除

12.頭の長さを揃える

  1. 首の付け根を右クリックで選択
  2. キーボードの『shift + s』→『u』の順に押して、カーソル位置を首の付け根にする
    f:id:mmorley:20160331233712p:plain:w300
  3. キーボードの『b』を押して範囲選択を開始する
  4. マウスドラッグして、首から上を選択
  5. キーボードの『s』→『z』の順に押して、z方向に拡大縮小
  6. マウスドラッグして、ボーンとモデルの頭の天辺を同じ高さにする
    f:id:mmorley:20160331234054p:plain:w300
  7. キーボードの『a』を押して、選択を解除

13.肩幅、腕の長さを揃える

  1. キーボードの『b』を押して範囲選択を開始する
  2. マウスドラッグして、肩から先を選択
  3. キーボードの『g』→『x』の順に押して、x方向に移動
  4. マウスドラッグして、ボーンとモデルの手先を揃えるを
    f:id:mmorley:20160331234436p:plain:w300

14.モデルをボーンに関連付ける

  1. キーボードの『tab』を押して、『Object Mode』にする
  2. モデルを右クリックして選択
  3. キーボードの『shift』を押しながらボーンを右クリックして、追加選択
    f:id:mmorley:20160331234750p:plain:w300
  4. キーボードの『control + p』→『i』の順に押して、ボーンをモデルに自動割り当てする
  5. キーボードの『a』を押して、選択を解除
  6. 『Properties』ウインドウの『Data』タブの『Display』の『X-Ray』のチェックを外す

15.フレームレンジ、フレームレートの設定

 このモーションキャプチャデータは1〜2820までフレームがあります。
 フレームレートは40fpsにします。

  1. 『Properties』ウインドウの『Render』タブの『Dimensions』で下記のように設定
    • 『Frame Range』の『End Frame』を”2820”にする
    • 『Frame Rate』を"40fps"にする
      1. fpsの選択で、『custom』を選択
      2. FPS』を"40fps"にする
        f:id:mmorley:20160401003132p:plain:w300

16.『3D View』でアニメーションの再生

 画面下部の下図のパネルを操作することで、『3D View』でプレビュー再生できます。
f:id:mmorley:20160401004955p:plain
 ショートカットキーは下記のように割り当てられています。

再生/停止 option + a
1フレームずつ順送り →または↑
1フレームずつ逆送り ←または↓
開始フレームに移動 shift + ←
終了フレームに移動 shift + →
10フレームずつ順送り shift + ↑
10フレームずつ逆送り shift + ↓

17.Blenderファイルを保存

  1. キーボードの『shift + command + s』を押して、別名で保存を実行
  2. 保存先フォルダを選択し、任意のファイル名を付けて『Save As Blender File』をクリック

 
 これで、BVHファイルの適用は終了です。

あとがき

 ボーンのサイズや位置を変更する際に気をつけないと、アニメーションの位置がめちゃくちゃになります。
 一番最初の縮小を『Object Mode』以外でやると、ボーンは小さいのに移動距離は最初のスケールになりました。
 あとは地上から浮かないようにしました。
 今回は『Weigth Paint』は使用しなくても自動割り当てですんなりと行きました。