MakeHumanとBlenderで人体アニメーション(MakeHuman 1.3とBlenderを使用)

【概要】

MakeHuman(人体モデル作成のための3Dソフトウェア)とBlender(3Dモデリング、アニメーション、レンダリングができる3DCGソフトウェア)で人体アニメーションを作成する手順を説明する。CMUモーションキャプチャデータベースのBVH形式モーションデータを使用し、MakeHumanで作成した人体モデルにBlenderでアニメーションを適用する。

【目次】

  1. 前準備
  2. cmu-motionデータセット(モーションデータ)のダウンロード
  3. BlenderとMakeHumanの準備
  4. Blenderで人体アニメーション
  5. レンダリング

【関連する外部ページ】

【サイト内の関連情報】

前準備

Blenderは,3次元コンピュータグラフィックス・アニメーションソフトウェアである.3次元モデルの編集,レンダリング,光源やカメラ等の設定による3次元コンピュータグラフィックス・アニメーション作成機能がある.

メニューの日本語化を行っておくと使いやすい.「編集(Edit)→プリファレンス(Preferences)→インターフェイス(Interface)→翻訳(Translation)」で設定できる.

cmu-motionデータセット(モーションデータ)のダウンロード

次のWebページでは、モーションデータ(キャラクターの動きを数値データとして記録したもの)が公開されている。このページで配布されているモーションデータを使用する。利用条件は利用者で確認すること。

https://sites.google.com/a/cgspeed.com/cgspeed/motion-capture/the-daz-friendly-bvh-release-of-cmus-motion-capture-database

謝辞:The Daz-friendly BVH release of CMU's motion capture database - cgspeed

  1. https://sites.google.com/a/cgspeed.com/cgspeed/motion-capture/the-daz-friendly-bvh-release-of-cmus-motion-capture-databaseを開く
    CGSpeedのモーションキャプチャデータベースページ
  2. 「PRIMARY RELEASE: Daz-friendly hip-corrected BVH files releases」からディレクトリを選ぶ
    BVHファイルリリースのディレクトリ選択画面
  3. 「DOWNLOAD」をクリック
    ダウンロードボタン

    ダウンロードページには広告が表示される場合がある。目的のダウンロードリンク以外はクリックしない。

  4. ファイルのダウンロードが始まる
    ファイルダウンロード中の画面
  5. 展開(解凍)すると、次のようなファイルが得られる
    Windowsでの展開(解凍)に便利な7-Zip:別ページ »で説明
    展開後のファイル一覧
  6. 「01」などのディレクトリの中に.bvh形式のモーションデータ(BioVision Hierarchy形式:モーションキャプチャデータを保存するファイル形式)が入っている
    BVHファイルが格納されたディレクトリ

    このデータはCMUモーションキャプチャデータベース由来である。MakeHumanでリグ(骨格)を付けるときは、「CMU mb」というリグを選ぶと、ボーン構成が一致しやすい。

BlenderとMakeHumanの準備

Blenderのインストール

メニューの日本語化を行っておくと使いやすい。

MakeHuman 1.3のインストール、Blenderでの設定

Blenderで人体アニメーション

BlenderのBVH Retargeterアドオンの準備

BVH形式のモーションデータをBlender上の骨格に適用する(リターゲットする)には、専用のアドオンが必要である。かつてはMakeHumanチームが開発した「MakeWalk」というアドオンが使われていたが、現在はその後継である「BVH and FBX Retargeter」(旧称MakeWalk、開発元は同一)が保守されている。BVHファイルに加えてFBXファイルからのリターゲットにも対応している。

  1. BVH Retargeterの解説ページを開く

    http://diffeomorphic.blogspot.com/p/bvh-retargeter.html

  2. ページに記載されているダウンロードリンクから、最新版の「BVH and FBX Retargeter」のzipファイルをダウンロードする。Blenderのバージョンごとに対応版が公開されているため、使用するBlenderのバージョンに合うものを選ぶ。
  3. Blenderを起動する
  4. Blenderで、「編集」→「プリファレンス」と操作する
  5. 「アドオン」を選ぶ
  6. 右上のメニューから「ディスクからインストール」を選び、ダウンロードしたzipファイルを選ぶ。

    これはレガシーアドオン(拡張機能プラットフォーム以前の形式のアドオン)としてインストールされる。

  7. 検索窓に「retarget」と入力し、該当するアドオンが表示されたらチェックを入れて有効化する。
  8. Blenderのプリファレンスの画面を閉じる

MakeHumanで、アニメーション化したい人体データの準備

  1. makehuman.exeを起動する
  2. MakeHumanで、人体に骨格(リギング。Blenderでは「アーマチュア」ともいう、3Dモデルをアニメーション化するための骨格構造)を付ける。「ポーズ/アニメーション(Pose/Animate)」を選び、種類を選ぶ。

    ここではCMUモーションキャプチャデータベースのBVHデータを使うため、「種類」として「CMU mb」を選ぶ。これで、CMUのモーションデータに対応した骨格が付く。

  3. 人体データを保存するために、「Files」を選び、「Save」を選ぶ。ファイル名とディレクトリを指定して保存すると、拡張子.mhm(MakeHuman Model形式)のファイルが作成される。

    保存先は既定ではMakeHumanのユーザデータフォルダ(Windowsの場合、C:\Users\(ユーザー名)\Documents\makehuman\v1py3\data\models)である。保存先を覚えておく。

  4. ファイルができるので確認する

Blenderで人体アニメーションを作成

  1. Blenderを起動する
  2. 中央の立方体は不要なので、立方体を左クリックで選んでから、Deleteキーを押して削除する
    初期立方体の削除
  3. N キーでサイドバーを表示し、「MPFB」タブを選ぶ(Nキーで表示と非表示が切り替わる)。
    「MPFB」タブが無い場合は、MPFB2アドオンのインストールが済んでいるかを確認する。インストール手順は別ページで説明している。
  4. 「新規人体(New human)」→「プリセットから(From presets)」パネルを開き、「MHMをインポート(Import MHM)」ボタンをクリックし、保存した.mhmファイルを選ぶ。
  5. 読み込まれるので確認する
  6. 「Rigging」→「Add rig」パネルを開き、リグの種類として「CMU MB」を選び、「Add rig」をクリックする。MakeHuman側でCMU mbのリグを設定していれば、同じ骨格構成の骨格がBlender上にも追加される。
  7. N キーでサイドバーを開き、「BVH and FBX Retargeter」(旧MakeWalk)のタブを選ぶ。
  8. 骨格(アーマチュア)を選択した状態で、アドオンのパネルにある「Load and Retarget」をクリックする。
  9. 準備したモーションデータの中から、.bvhデータファイルを1つ選び、ファイル選択画面で決定する。
  10. アニメーションが骨格に読み込まれ、再生できる状態になる。
bvhデータファイルのビューワは、別のWebページで紹介している。

レンダリング

次の手順でアニメーションをレンダリング(3Dシーンから連続した2D画像を生成する処理)する。「アニメーションのレンダリング」は、複数のフレームを一括でレンダリングすることである。

  1. 次の手順で、カメラの位置を調整する
    1. カメラを「カメラ視野」に固定する

      Nキーでサイドバーを出し、「ビュー」タブを選び、「カメラをビューにロック」(Blenderのバージョンによっては「カメラをロック」と表示される)にチェックを入れる(サイドバーを閉じるときもNキー)。

      カメラをビューにロックの設定
    2. 視点をカメラに変える

      視点 (View) → カメラ (Camera) と操作する。画面右上のナビゲーションコントロール(視点操作ツール)やテンキーの「0」でも切り替えができる。

      カメラビューへの切り替え

      「カメラをビューにロック」をチェックしたので、「カメラ視野(カメラビュー)」(レンダリング時に使用される視点)を動かすと、同時にカメラも動く。

      • カメラ視野の平行移動:SHIFTキーとマウスの中ボタンを押しながらマウス移動
      • カメラ視野の回転(原点を基準):マウスの中ボタンを押しながらマウス移動
      • マウスのホイールでも視点を調整できる
      カメラ視野の調整
    3. F12キーでレンダリングして確認する

      これはカメラ視野でのレンダリングである。

      レンダリング結果の確認
  2. アニメーションの終了フレームの設定

    既定(デフォルト)は250である。ここでは60くらいの値にする。

    アニメーション終了フレームの設定
  3. アニメーションのレンダリング

    CTRLキー + F12キー(同時押し)

    レンダリングが始まるので、確認する。終了を待つ。

    アニメーションレンダリング中
  4. レンダリングが終了したら、確認のため再生する

    CTRLキー + F11キー(同時押し)

    別ウインドウが開いて、再生が始まる。

    レンダリング済みアニメーションの再生
  5. 必要に応じて、カメラを見やすい位置に再度調整する
    カメラ位置の再調整