主にMMDやBlenderの個人的なメモ用です。一部に成人向けの内容を含みます!未成年の方はご覧にならないでください!


モデルの規約によっては改造だけでなくMMDとその派生型以外のソフトウェアにモデルを持っていくこと自体を禁止しているものもあります。ご注意ください!!



mmd_uuunyaa_toolsUuuNyaa / blender_mmd_toolsと連携してシーン、モデル、マテリアル等を調整するためのBlenderアドオンです。
BlenderでMMDモデルを利用して動画制作等を行うのに非常に便利です。

UuuNyaa / blender_mmd_toolsのV2.2.4以降の導入が必須です。


blender_mmd_toolsについては【Blender 3.0】mmd_tools【UuuNyaa版】のページをご覧ください。
また、このページでは例としてImagineGirls / Vienne Ver2 Free版の.pmx版を利用させてもらいます。

編集メモ:ピラミッドクロスのダイナミックペイントを使った手法の解説を記載する


Blenderへのインストール


githubのblender_mmd_uuunyaa_tools/releasesからアドオンをダウンロードします。
Source code(ZIP)ではなく、mmd_uuunyaa_tools-[Ver].zipの方です。

Blenderへのインストール方法として簡単なのがBlenderからZIPファイルを読み込ませる方法で、もう一つは解凍して手動で該当フォルダへコピーする方法です。

BlenderからZIPファイルを読み込ませる場合


Blenderを起動させ、メニューバーの編集プリファレンス...からプリファレンスウインドウを開き、アドオン項目のインストール...から先ほどダウンロードしたアドオンを指定してBlenderへインストールします。

あとはmmd_uuunyaa_toolsにチェックを入れます。(表示されない場合は検索欄に”mmd”と入力します)

この方法でインストールしたアドオンはC:\Users\[User名]\AppData\Roaming\Blender Foundation\Blender\[Ver]\scripts\にインストールされます。

手動で該当フォルダへコピーする場合(推奨されません)

こちらの方法は推奨されていませんが、何らかの要因で上記の方法ではインストールできない場合に供えて記載しておきます。
アドオンを解凍し、.pyファイルを含むフォルダをBlenderのインストール先のblender-[OS]\[ver]\scripts\addons以下へコピーします。
Blenderを起動させ、メニューバーの編集プリファレンス...からプリファレンスウインドウを開き、アドオン項目を開いたら、検索欄に”mmd”と入力してmmd_uuunyaa_toolsにチェックを入れます。

サイドバー → MMDタブ


Blenderへmmd_uuunyaa_toolsを正常にインストールできたら、サイドバー(表示されない場合は3Dビュー上にマウスカーソルを持っていき[N]キーを押す)のMMDタブを下にスクロールするとUuuNyaaオペレーターという項目が表示されるはずです。

※サイドバーにMMDタブが表示されない場合、mmd_tools Add-onが正常にインストールできていない可能性があります。
mmd_toolsは複数の方が更新を引き継いでおり、同名の旧Verをインストールしているかもしれません。
最新版や、詳細は【Blender 3.0】mmd_tools【UuuNyaa版】のページをご覧ください。

UuuNyaaオペレーター

レンダー

Blenderのレンダープロパティの設定などを変更します。
  • レンダーエンジンをEevee用に設定
レンダーエンジンをEevee用に設定に設定します。
BlenderでMMDモデルをPBR調でレンダリングする際は基本的にこの設定で大丈夫ですが、レンダープロパティカラーマネージメントルックHigh Contrastになるので注意が必要です。
※動画によってはカラーマネージメントルックなしに、ビュー変換標準にした方が良い場合もあるかも知れません。

  • レンダーエンジンをWorkbench用に設定
レンダーエンジンをWorkbench用に設定します。
Workbenchは少し特殊なレンダリングエンジンで、本来は3Dビューポートの表示に利用されるエンジンです。
EEVEEより更に高速ですが、本格的なレンダリングには向きません。(半透過テクスチャがサポートされていないなど制限がある)

  • レンダーエンジンをトーンEevee用に設定
後述するマテリアルプロパティのMMD UuuNyaaマテリアルから、Toon Shaderを選んでToon調でレンダリングする際に利用します。
MMDモデルのマテリアルに対してToon Shaderを割り当ててこの設定にすると、MME(シェーダー)を当てていない状態のMMDに近い見た目でレンダリングできます。

  • Eeveeレンダリングパフォーマンスチェック

こちらはレンダーエンジンの設定ではなく、Eeveeを用いてレンダリングする際のパフォーマンスチェック機能です。
MMDからRigify

※Blender上でRigify Add-onを有効にしておく必要があります。

RigifyとはBlenderに標準でバンドルされている、リグコントローラーを作成するAdd-onです。
Rigifyとmmd_uuunyaa_toolsのMMDからRigify機能を用いることで既存のMMDのアーマチュアにRigifyのコントローラーを統合できます。
これにより、例えばモーションの修正や作成が容易になります。


BlenderへMMDモデルをインポートし、モデルのアーマチュア(ボーン)を選択した状態でMMDからRigifyメタリグの追加をクリックします。


メタリグが追加されますので、そのままの選択状態でオブジェクトデータプロパティタブからRigify→Generate RigをクリックしてRigifyアーマチュアを作成します。


不要になったメタリグを削除します。アウトライナーでmetarigを選択して[X]キーで削除します。


MMDのアーマチュアとRigifyのアーマチュアを統合します。
MMDのアーマチュアとRigifyのアーマチュアを選択し、MMD互換性を重視して統合または、Rigify操作性を重視して統合のいずれかをクリックします。
とりあえずMMD互換性を重視して統合で良いと思います。
Rigify操作性を重視して統合だと、MMDモーションをインポートすると破綻するらしい?


MMD-RigifyのIKの設定等はサイドバーのアイテムタブのUuunyaa MMD Rigify項目にあります。
RigifyからMMD

※Blender上でRigify Add-onを有効にしておく必要があります。

こちらはRigifyのアーマチュアをMMD互換にする機能です。
Rigifyアーマチュアで作成されたモデル(例えば.fbxなど)にMMDのモーションを適用するのに使うようですが、筆者は使用した事がないため詳細は上記動画をご参考ください。
(実験的)Auto-RigからMMD
こちらはRigifyの代わりに有料Add-onのAuto-Rigを用いる際の機能ですが、筆者はAuto-Rigを使用していないため未検証です。

UuuNyaa物理演算

BlenderにインポートしたMMDモデルの物理演算はBlenderのリジッドボディを用いた物理演算に変換されますが、UuuNyaa物理演算はこれをBlenderのクロスシミュレーション等に変換して高品質な物理演算を行えるようにする機能です。

服などをシミュレーションするクロスシミュレーションと胸の揺れなどをシミュレーションするピラミッドクロスに分かれてます。
クロスシミュレーション

服などをシミュレーションするクロスシミュレーション機能です。
この項目では例としてニコニ立体ちゃん(アリシア・ソリッド)のPMX版モデルのスカート部分をクロスシミュしてみます。


まずはサイドバーのMMDタブからモデル設定可視性:からアーマチュアのチェックを外し、リジッドボディにチェックを入れてメッシュとリジッドボディがビューポート上に表示されるようにします。


MMDモデルの揺らしたい部分のリジッドボディ(剛体)を一つ選択し、サイドバーのMMDタブからUuuNyaa物理演算リジッドボディの矢印アイコンをクリックすると同一の剛体グループに設定されたリジッドボディがすべて選択できます。
意図しないリジッドボディまで選択された場合はビューポート上で[C]キーを押してサークル選択状態にし、マウスホイールクリックで意図しないリジッドボディの選択状態を解除します。


MMDモデルの揺らしたい部分のリジッドボディ(剛体)がすべて選択された状態で、揺らしたいメッシュオブジェクト(材質)を追加選択します。
(ビューポート上で[Shift]キーを押しながらオブジェクトをクリックすることで追加選択できます)

リジッドボディとメッシュが選択されるとコンバーター:リジッドボディをクロスにボタンが有効化されるのでクリックすればOKです。


[Space]キーを押して再生するとクロスシミュされていますが、ご覧の通りスカートが体に貫通しているのでコリジョン(当たり判定などに使うモディファイア)を追加で設定します。


太ももや体のリジッドボディを選択して物理演算プロパティからコリジョンを選択追加します。


物理演算プロパティを下の方にスクロールするとUuuNyaaコリジョン調整器項目があり、簡単なコリジョンの設定が行なえます。


あとはmmd_toolsの機能でMMDモデルの物理演算をビルドし、モーションを読み込ませてベイクすればOKです。

※MMDモデルによっては上手くクロスシミュに変換できないモデルもあるようです。(メッシュやボーン等の構造による?)
ピラミッドクロス

主にMMDモデルの胸揺れなど軟体をシミュレーションする機能です。

※MMDモデルの胸揺れ方式(ボーン構造、ウェイトなど)によって相性がある?

※既存の胸揺れ物理を削除しないと揺れが重複しておかしな事になるので削除する事を推奨します。

既存の胸揺れ物理を削除する方法



まずはウェイトの乗ったボーンを特定します。
アーマチュア(ボーン)→メッシュ(材質)オブジェクトの順に選択して[Ctrl]+[TAB]からウェイトペイントモードへ入り、[Ctrl]+[左クリック]でボーンを選択すると、どのボーンにウェイトが載っているか確認できます。


[Ctrl]+[TAB]からオブジェクトモードへ戻り、メッシュオブジェクト→アーマチュアの順に選択して[TAB]キーを押して編集モードへ入り、先程確認したウェイトが載っているボーンを選択します。


ピラミッドクロスからピラミッドを追加を選択して追加します。


[TAB]キーを押してオブジェクトモードへ戻り、追加したピラミッドメッシュとMMDモデルのメッシュ(胸を揺らす場合はボディなど)オブジェクトを選択してピラミッドをクロスにを選択します。


デフォルトの設定では胸揺れ用としては硬すぎるのでパラメーターを調整します。
3Dビューポートか、アウトライナーを開いてphysics_pyramid_cloth_[ボーン名.LorR]を選択し、物理演算プロパティの下へスクロールするとUuuNyaaクロス調整器UuuNyaaピラミッドクロス調整器の項目があります。

UuuNyaaクロス調整器キャッシュ:の範囲を読み込ませたモーションと同じ範囲に設定します。

UuuNyaaピラミッドクロス調整器のパラメーターについてはウェイト:弦固定ウェイトの値を0.500程度にすると、モーションにもよりますがそれらしく揺れます。

モーションを読み込ませないと揺れません。(ポーズモードで動かしても揺れない)

ピラミッドクロスの衝突、変形機能の解説

その他
  • 重心を追加

マテリアルプロパティ → MMD UuuNyaaマテリアル


mmd_toolsでBlenderへインポートしたMMDモデルなどに対して、予め用意されているプリセットからマテリアルを設定できます。

予めMMDモデルのメッシュオブジェクトをマテリアル単位で分割しておいた方が操作しやすいです。

MMDモデルのメッシュをマテリアル単位で分割する方法



任意のメッシュを選択したらマテリアルプロパティを開き、下へスクロールするとMMD UuuNyaaマテリアルという項目(パネル)があるのでマテリアルサムネイルアイコンをクリックします。


現在は25種類のマテリアルのプリセットが用意されています。
このうち、Toon Shader以外はPBR調用のマテリアルです。

マテリアルプリセット一覧

MMD UuuNyaaマテリアル調整器


MMD UuuNyaaマテリアルでプリセットから割り当てたマテリアルの調整機能です。
※一部のマテリアルでは対応していなかったり、一部しか調整できません。
名前説明
サブサーフェスサブサーフェスを追加します
ウェットウェットを追加します
グリッターグリッターを追加します
放射放射を追加します

ワールドプロパティ → MMD UuuNyaa照明


予め用意された照明をBlenderへ追加します。

サイドバー → アセットタブ



予め登録された.pmxなどをダウンロード、追加する機能です。(自分でアセットを追加する事もできます)
RAR形式のアセットを解凍するにはWinRARをインストールしておく必要があります。

アセットの規約等にご注意ください!!
タグ

Menu

モデル/アクセサリ/素材など

Blender 2.9 LTS


※下記のページは古いものです

エンコード

コーデック

エンコード/動画編集ソフトウェアなど

その他

サウンド編集ソフト

AD

AD

管理人/副管理人のみ編集できます