MMDモデルのpmxファイルをfbxに変換する方法【Blender】

スポンサーリンク
スポンサーリンク

Export設定

MMD(MikuMikuDance)モデルを使用してBeat SaberやVRChat用のアバターを作成する場合、Unityを起動する前にやらなければならない工程がふたつあります。

ひとつはボーン構造などの最適化、そしてもうひとつはファイル形式の変換です。

BlenderでMMDモデルをUnity用に最適化して、ファイル形式をpmxからfbxに変換する方法を解説します。

スポンサーリンク
スポンサーリンク

必要なもの

Blender本体

Cats Blender Plugin(Blenderプラグイン)

MMDtoors(Blenderプラグイン)

それぞれリンク先からダウンロードします。

※MMDtoorsはCats Blender Pluginに同梱されるようになりました。Cats Blender Pluginを導入する場合、MMDtoorsを単体でダウンロードする必要はありません。

 

ダウンロードしたBlenderは、インストーラーの指示に従ってインストールしておいてください。

スポンサーリンク

プラグインの導入

Cats Blender Pluginの導入

Blenderを起動します。

User Preferences...

情報ウィンドウから「File」をクリックして、表示されたメニューの中から「User Preferences…」を選択します。(ショートカットキーの Ctrl + Alt + U でもOK)

 

Install Add-on from File...

「User Preferences」ウィンドウが開いたらAdd-onsタブが選択されていることを確認して、左下にある「Install Add-on from File…」をクリックしてください。

 

cats-blender-plugin-master.zip

ファイル選択画面が表示されるので、ファイルの保存先を開いて「cats-blender-plugin-master.zip」を選択します。

そのままファイル名をダブルクリックするか、右上の「Install Add-on from File…」を押してアドオンをインストールします。

 

3D View: Cats Blender Plugin

あとはアドオン一覧から「3D View: Cats Blender Plugin」にチェックを入れて、左下の「Save User Settings」を押して変更を保存すれば完了です。

 

MMDtoolsの導入

※「MMDtools」は「Cats Blender Plugins」に同梱されています。

上記手順でCats Blender Pluginをインストール済みの場合、以下の作業は不要です。

MMDtools導入

ダウンロードしたMMDtoorsを解凍して、中身の「mmd_tools」フォルダをBlenderの「addons」フォルダにコピーしてください。


コピー元

「blender_mmd_tools-dev_test」内の下記フォルダ

  • 「mmd_tools」フォルダ

※mmd_tools以外のフォルダやファイルはコピーしないように。

 

コピー先

Blenderインストール先の下記フォルダ

  • 「addons」フォルダ
「addons」フォルダのパスは「C:\Program Files\Blender Foundation\Blender\2.79\scripts\addons」です。(既定値)

2.79の部分はバージョンによって異なります。


User Preferences...

Blenderを起動して、「File」→「User Preferences…」を選択します。

 

Object: mmd_tools

ユーザー環境設定のウィンドウが表示されたら、以下の順で操作します。

  1. 「Add-ons」タブをクリック(アドオン一覧が表示されます)
  2. 左側のCategoriesから「Object」を選択(検索欄にmmd等と入力してもOK)
  3. 「Object: mmd_tools」にチェックを入れる

「Save User Settings」を押して変更を保存したら完了です。

スポンサーリンク

3Dモデルの編集

プレビュー画面の基本操作

最低限のマウス操作方法のみ書いておきます。

  • カメラ操作
    • ホイール上下・・・視点を前後に移動
    • Shift + ホイールで・・・視点を上下に移動
    • Ctrl + ホイール・・・視点を左右に移動
  • 細かいカメラ操作
    • ホイールドラッグ・・・モデルを中心に視点移動
    • Shiftキー + ホイールドラッグ・・・視点を上下左右に移動
    • Ctrlキー + ホイールドラッグ・・・視点を前後に移動
  • 選択操作
    • 右クリック・・・対象を選択
    • 右ドラッグ・・・対象を掴む(右クリックで解除)

MMDモデルをインポート

MMDモデルインポート

ツールシェルフの「CATS」タブを選択します。

「Import Model」の右側にある「≡」ボタンを押してから、「MMD」を選択してください。

(「File」→「Import」→「MikuMikuDance Model (.pmd, .pmx)」でもOK)

インポート設定

ファイルを開く前に、必ず画面左下のインポート設定を確認してください。

※Cats Blender Plugin(MMDtools同梱)と単体のMMDtoolsを両方インストールすると、インポート/エクスポート時に設定が表示されない場合があります。プラグインが重複しないように気を付けてください。
pmxインポート設定

この画像と同じ設定になっていればOK

以下の項目が選択されていない場合は設定を変更してください。

  • [Mesh]
  • [Armatu]
  • [Morphs]
  • ☑ Clean Model
  • ☑ Rename Bones – L / R Suffix
  • ☑ use MIP maps for UV textures

Scaleは0.08に指定します。

※Morphsをクリックすると「Mesh, Armatur, Morphs」が選択されます。
[Shift]キー+クリックで個別に選択状態を解除してもOK

 

これらの設定はプリセットに登録しておくと便利です。

「Operator Presets」の右側にある「+」アイコンから、よく使う設定のプリセットを作成しておきましょう。

 

問題なければMMDモデルデータの.pmxファイルを選択して、ダブルクリックまたは「Import Model File (.pmd, .pmx)」を押します。

 

Import直後

こんな感じで3Dモデルが読み込まれていればOKです。

 

「MMD Shading」→「Shadeless」

3Dプレビュー画面右上の「+」ボタンを押してプロパティシェルフを開き、「MMD Shading」→「Shadeless」を選択すると色の付いた状態を確認できます。

ボーン(Armatur)等を非表示にしたい場合は、すぐ上にある「MMD Display」の項目を弄ってください。

 

モデルの最適化

3Dモデルの最適化を行います。

Fix Model

テトラポッドのようなアイコンの3Dモデルデータを選択して、「CATS」タブの「Fix Model」を押してください。

 

ポリゴン数の削減

VRChat用アバターの場合はモデルのポリゴン数に制限があるので、その編集も必要になります。

アバターのポリゴン数をパーツごとに減らす方法【Blender】
3Dモデルをゲームのアバターとして使うためには、ポリゴン数を削減しなければならないケースがあります。(例えばVRChatでは総ポリゴン数2万以下という制限あり)Cats Blender Pluginを用いてメッシュを分割してから、モデルのポリゴンを減らす方法を紹介します。

モデルをfbxでエクスポート

最後にファイルを変換して保存します。

ArmatureとBodyを選択

画面右上のアウトライナーから

  • Armature(オレンジ色の人型アイコン)
  • Armature(白黒の人型アイコン)
  • Body(逆三角形アイコン)

を選択状態にしてください。

[Shift]を押しながら「Body」→「Armature(白黒の人型アイコン)」 の順でクリックすれば、3つとも全て選択されます。

 

Export Model

「CATS」タブの「Export Model」を押して、エクスポート画面を開きます。

(または「File」→「Export」→「FBX (.fbx)」)

エクスポート設定

保存する前に、必ず画面左下のエクスポート設定を確認してください。

Export設定

この画像と同じ設定になっていればOK

設定を以下のように変更します。

[Main]タブ

  • ☑ Selected Objects にチェックを入れる
  • [Empty, Armature, Mesh, Other]を選択
    ※[Camera, Lamp]は未選択状態にする(Siftキーを押しながら左クリック)

[Geometri]タブ

  • □ Apply Modifiers のチェックを外す

[Armatures]タブ

  • □ Add Leaf Bones のチェックを外す

[Animatior]タブ

  • □ Baked Animation のチェックを外す
プリセット登録

インポート時と同じように、この設定も保存しておくと便利です。

「Operator Presets」の右側にある「+」アイコンをクリックして、よく使うプリセットを登録しておきましょう。

まとめ

BlenderでMMDモデルのpmxファイルをfbxに変換する方法を紹介しました。

作業自体は単純ですが、最後にボディとアーマチュアを選択し忘れたり、インポート/エクスポート時の設定変更を忘れたりしないよう気を付けましょう!

スポンサーリンク
スポンサーリンク
スポンサーリンク
スポンサーリンク
Blender
のしろぐ

コメント

  1. […] 例えばMMDなどで使用されるフォーマットPMXの変換の方法としては、Unityと相互にサポートしている3Dモデリングソフト「Blender」にアドオン(mmd_toolsなど)を追加してインポートしてから「FBX」に変換(PMXからFBXへの変換方法)してUnityに読み込ませる事で、同じ手順で「VRM」に変換する事が可能です。 […]

  2. たっつん より:

    とても分かりやすい内容で参考にさせてもらってます♪
    ところで、MMD用のPMXファイルで道具などのアクセサリを、このページの手順でFBXにエクスポートしたました。
    それを「SB3UtilityGUI」で読み込んだところテクスチャは含まれませんでした。
    何か設定が間違っていたのでしょうか?

    • 管理人 より:

      コメントありがとうございます。
      通常の方法でUnityへインポートした場合もうまくいきませんか?
      SB3UtilityGUI特有の問題であれば、使ったことがないので私にはわからないです。

      • たっつん より:

        返信ありがとうございます!
        別のソフトについて尋ねてしまいすみません。
        いろいろ試行錯誤してみましたが、初心者なので手順をただ倣うことしかできず。何が良くないのかもさっぱりで。。。

        ついでですみませんが、
        UV展開すると白黒で直線を書きなぐったようになり、3D上では表示されている絵も反映されないのはなぜなのでしょうか?
        FBXにまとめられないなら、別にUVマップ?を取り出してできないかとも思ったのですが、これもうまくいきませんでした。

        • 管理人 より:

          すみません、ご質問の意味がよくわかりません。
          UV情報はFBXファイルに保存されていますよ。

          • たっつん より:

            こちらこそ端的でここのページと無関係な質問でした。
            UV情報については、質問した内容を踏まえてもう少し勉強してみます。

            重ねて別の質問ですみません。
            FBXでエクスポート関連について、MMDモデルには動きをつけられるボーンが含まれますが、
            ボーンは含めず、オブジェクトとしてのマテリアルとUV情報のみをFBXとして取り出すことは可能でしょうか?

            • 管理人 より:

              エクスポート時の設定でアーマチュアを除外すれば、ボーンの情報を含めずに出力可能です。(Blenderでは、複数のボーンで構成された骨格のことをアーマチュアと呼びます)

              出力項目(Empty,Camera,Lamp…と並んでいる項目)の「Armature」を非選択状態にしてからエクスポートしてください。

  3. たっつん より:

    教えていただいたように設定をしたら上手くできました!
    何度も丁寧に答えてくださり感謝します。
    ありがとうございました!

  4. 署名 より:

    FBXに変換してHitogataに変換したところ、色が白くなってしまったのですが、対処法はありますか?

    色々なMMDモデルを試してみましたが、白くなるのとならない物がありました。

    なお、Windows標準の3Dビュアーでは色がちゃんとついていました。

    • りんこ より:

      私も同じ問題があります。すみませんが、この問題は今解決されていますか?もし解決方法があれば教えてくれますか?

タイトルとURLをコピーしました