見出し画像

blenderでMMDモデル作るとき用の備忘録(前提編)

******************

はじめに

 MMDで好きなキャラが動いているのを見たい。でも諸事情で動かしたいキャラを借りに行けなかった。じゃあ作ろう、という人向けの記事です。あとwindows使用者向け。
 なお内容はややセットアップ寄りにするつもりなのでモデリングの具体的な工程は割愛する予定です。参考資料がネットにもういっぱいあるんで検索してみたらいいと思う。
 こうやって手をつくったらいいよ、とか顔のトポロジはね、とかそういう話は今回は対象外ということで。申し訳ない。
 逆に他ソフトで人型は作れるけどblenderの使い方わからんとかMMD特有のあれこれがわからんって人には数ミリ参考になる……といいね……

 なお筆者はMMD歴1年くらいの雑魚雑魚プランクトンなので、間違ったことや効率悪いこと言ってたら先達の皆様におかれましては優しく教えていただけませんでしょうか。

この備忘録の最終到達点

 MMD内で配布モーションを読み込ませた流し込んだときにいい感じに踊ってくれる人形MMDモデルを錬成すること。

MMDモデルの構造分析

 モデルモデル言ってるけど具体的にどういう作りをしているのか。
というかMMDモデルってどうやって動いてるの?

☆まず、MMDのモデルはナニから出来ているのか。
 ・頂点
 ・面
 ・ボーン(骨)
 ・剛体
 ・ジョイント
 以上5つがMMD用pmd・pmxモデルを構成する基本要素です。
あとこれにテクスチャやtoon、スフィアといった要素が加わることもありますが、これらは人間でいえばお化粧のようなものなので、後回し。
ーーーMMDモデルの基本構成 より
http://mmd-tb.jugem.jp/?eid=31#sequel

 すごく丁寧に説明してくれているサイトがありました。さんきゅー先人。
正確性はさておき自分はこの5種を以下のように雑に分類しています。

モデルの頂点・面→見た目を作る部分
ボーン→自分で動かすための部分
剛体・ジョイント→自動で動く部分

 要するに最低限モデルを踊らせるのに必須なのは材質(頂点・面のみ)・ボーン・ウェイトの3つ。
 最低限で遊んでいるうちにもの足りなくなるはずなので、そのときに残りの材質の項目・モーフ・ジョイント・剛体を深堀りしていきましょう。

MMDモデルの構成(個人の所感)を雑に図にするとこんな感じ。
まだ他にも要素があるので気になったら調べてほしい。

全体像の把握って結構大事だよねという話

 MMDモデルがどんなものから構成されているかがなんとなく把握できたところで自分の作成手順を以下にご紹介。
 なおこのシリーズが順番通りに進められるかはまだ未定です。

自己流モデル作成手順

1.ボーンの準備
2.ポリゴンを張る
3.テクスチャを貼り付ける
4.ウェイトを塗る

 ぶっちゃけ振り付けを踊るだけならここまでで終わって問題ないです。
 でもやっぱり表情が欲しかったり揺れもの(ふわふわ動くもの)が欲しくなります。

5.モーフを追加(一時的に頂点を動かすもの:主に表情付けに使う)
6.物理を追加(jointと剛体で揺らすもの:主に服や髪や胸やアクセサリ)

上の工程がだいたい加わります。そして作業時間と満足度が伸びる。

 なんとなく番号を振りましたが、別にこの順番通りやる必要はないです。
 自分は好みの顔のモデルが動いているとモチベが上がるので、製作中は顔と髪だけある程度作って物理とモーフを入れ、適当なポリゴンの手足をひっつけてpmx出力することもしょっちゅうあります。
 4の作業中にウェイトの調子悪いな~ポリ割りが悪いのかもな~で2の工程に戻ることもしばしばあるので、傍から見れば非常に効率が悪いかもしれませんがご容赦ください。

この記事で使用するソフト

 個人的な意見ですが、バージョン管理が面倒なのでインストーラー版ではなくzip(portableとも)版でダウンロードしてくるのがおすすめです。
 あと全部無料です。課金もできますが割愛。

MMD (ver9.32 64bit):モデルを動かすソフト
blender(ver2.93):モデルを作るソフト
+αでPMXエディタ(ver0.2.5.7):モデル調整
+αでペイントソフト(筆者はmedibang paintを使いました)

この記事で使うBlenderアドオン

・mmd-tools……モデル情報の管理・データ入出力(必須・DLで入手)
・blender2pmxem……ボーン生成用(作業省力化・DLで入手)
・Paint Palettets……ウェイト塗る用(作業省力化・もともとBlenderにある)

 mmd_tools以外は気合や根性で代用可です。
 また、mmd_toolsでの作業にはpmxエディタで出来るものもかなり含まれます。が、今回はできるだけBlenderで完結することを目標にしているのでそちらご了承ください。
 便利機能は使っていきたいので今後よいアドオンがあれば追記します。

おわりに

 一応これで前提編はおしまいです。次回はボーンを準備するところから。
 下にBlender側の初期設定とアドオンの入れ方をメモしておきます。
 2.93使うの初めてじゃないしアドオンも用意出来たわという方は読まれずとも大丈夫ですので次回お会いしましょう。

******************

補足1:PMX?PMD?なにそれって人向けの話

 上で紹介したサイト中で使われているPMDとかpmxとはMMDモデルで利用されているファイル形式データの種類のことです。
 今はPMDよりPMX形式が主流。
 動画ファイルが.mp4で終わるように、今回は最終的に(モデル名).pmxというデータを作ればいいわけですね。

自作モデルの中身。.pmxとあるのがMMDモデルのファイル。
ファイル名適当になりがちだが
本当はちゃんと作業内容がわかるように付けたほうが良い

pmdおよびpmx形式についてより詳しく知りたい方へのおすすめサイト
https://mikudan.blog.fc2.com/blog-entry-280.html

みくだん
MikuMikuDanceユーザーのブログ
https://mikudan.blog.fc2.com/tb.php/280-580b9848

さらに補足:拡張子という単語に馴染みがない人向けの話

 上記の(モデル名).pmxにおける【.pmx】のような、ファイル名のあとのドットの後の文字列のことを拡張子といいます。
 PCがファイル形式を見分けるための目印のようなものです。
 メモ帳で作ったファイルとかwordファイルとかexcelファイル名の最後に.txtとか.docxとか.xlsxとかがついているものを見たことはありませんか?あれです。
 よければお使いのPCのエクスプローラー黄色いファイルアイコンのアプリまたはソフトでwordやexcelやテキストファイルを御覧ください。拡張子が見えますか?
 見えなければお使いのPCの設定は拡張子が非表示になっているので見えるようにしておいてください。

追記:Blenderのバージョンについて(2022/01/08)

 2022年1月現在の最新バージョンはBlender3.0ですが、このシリーズでは記事を書き始めた当初に揃えて2.93を説明に使用しています。3.0をお使いの方はご留意ください。
 詳しくは以下の記事で→

補足2:ネットからあんまりソフトとかダウンロードしたことがないよって人向けの話

DLの際に気をつけてほしいことは
・DLするソフトのバージョンを確認する(ソフト名の後ろの数字のこと)
・保存先のファイル名を確認する(どこに保存したかぼんやり覚えておく)
・zipでDLしたときは右クリックメニューのプロパティ▶セキュリティを許可しておく
の3つです。
 特に3つ目は普段意識しないので忘れがち。でもフリーソフト系でこれ忘れて実際エラー吐かれたことがあったので大事(愚者)。
 あとお使いの解凍ソフトが自動的にセキュリティ許可までやってくれる人は気にしなくて良いです。

zipファイルを右クリック▶プロパティ▶セキュリティ▶「許可する」にチェックを入れる▶「適用」を押すことでセキュリティが解除される

起動に失敗する主な理由 __とある工房 より
https://kkhk22.seesaa.net/article/471320888.html?seesaa_related=related_article

 参考までに筆者の環境ではMMDとPMXEをDLして開いたときに「ランタイムが足りない」「アセンブリが~」「依存関係が~」みたいなエラーがでました。
 MMDのほうはzipのブロック解除と足りないらしいランタイム追加で必要なデータの追加DLでどうにか解決したものの、PMXEはうまく行かず試行錯誤しました。
 DL▶展開▶再度zip化▶展開の手順を踏むと何故かエラーがでなくなりましたので一応解決ということにしています。
 他PCで圧縮されたデータだからセキュリティが過剰に反応してて、自前の環境で圧縮されたデータだからOKだったとか……?正直原因は不明です。

blenderを起動して日本語にする

起動したらスタートメニューの左側、新規ファイルの「全般」を選ぶ。

 さてblenderの公用語は日本語ではないので、当然ながら起動したばかりの画面は英語なわけです。しかし筆者は日本語のほうが読みやすいので、blenderも日本語化します。

 一番上のメニューバーから①Edit▶②Preference(歯車マーク)▶③Interface▶④TranslationにあるLanguageの言語をJapanese(一番左列)に変更する。
 Languageを切り替えたらblenderのメニューが全部日本語に変わる。(画像は変更後の様子)「影響」という項目名でツールチップ・インターフェース・新規データとある。が、新規データのチェックははずしておくことをおすすめする。理由の予想がつく人は下の補足を飛ばし次に進んでください。

補足:「新規データ」は日本語設定にしないほうが良いという話

 下部のチェックボックスのうち「ツールボックス」と「インターフェース」は日本語化で問題ないのでチェックを入れますが、「新規データ」はチェックせず英語のままにします。
 なぜなら日本語表記をプログラム側は想定していないことが多いからです。詳しくは命名規則とかで調べるといいかも。
 新規で作られるデータへ自動的につける名前の言語がここで決まるのですが、日本語はエラーのもとなのでやめたほうが無難かと思います。
 ちなみに後からでも変更出来るので、海外産のチュートリアルを見るときなんかはその言語表記に合わせるとちょっと便利です。

追記:日本語と英語切り替えアドオンの紹介(2022/01/08)

 普段は日本語で作業して海外産チュートリアル見るときだけ英語にしたい人にいい感じのアドオンがあったので追記。アドオンの説明は後述します。
 対応バージョンは2.83なので自己責任でお試しくださいというやつですが、筆者の環境(ver.2.93.7及びver.3.0)で試したところ問題なく動作しています。(2022/01/08)

Toggle Translated UI……Endキーを押すと英語と日本語でUI切り替えが出来る
https://www.cgradproject.com/archives/5503/

https://www.cgradproject.com
藤堂++

blenderにアドオンを入れる(2022/01/08改稿)

 先程MMDのモデル形式こと.pmxについてお話しましたが、blenderは標準でpmx形式を取り扱っていません
 なので、アドオン拡張機能の力を借りてpmx形式で出力可能にするわけです。
 このシリーズで使う予定のアドオンは以下の2つ。

mmd-tools……全体的にお世話になる、無いと困る
https://github.com/UuuNyaa/blender_mmd_tools
追記:ver2.0に更新されていました!(2022/01/08)
https://mmd-blender.fandom.com/ja/wiki/MMD_Tools
ver1.0でも使えるとは思いますが2.0の方がUI整理されているので更新をおすすめします。なお更新時にはver1.0は削除しておく必要があるらしい。

blender2pmxem……特にボーン周りでお世話になる、かなり便利
https://github.com/12funkeys/rigid_bodys_gen
追記:こちらも2.93及び3.0向けに更新されてました!(2022/01/08)
https://blender2pmxem.netlify.app/

 上に併記したURLはgithubというソースコード管理サービスのサイトです。ここのサイトからzip形式でアドオンをDLすることになります。

補足:githubからのダウンロードについて
githubからzipでDLするには、codeまたはcloneと書かれた緑ボタンを押しzip形式を選ぶ必要があります。
 UIに慣れていないとちょっと戸惑う部分もあるかもしれませんが、こんなん「github ダウンロード」とかで検索すれば親切な記事がいっぱい出るので頑張って慣れようとする必要はないです。気軽にやっていこうな。

 追記:アドオンの更新に伴い、掲載URLをそれぞれの公式サイトのものに変更しました。アドオンのDL方法と詳しい使い方はそちらで詳しく説明されていますのでぜひご確認ください。(2022/01/08)

 DLしたzipをプロパティ▶セキュリティで許可したら、blenderにアドオンをインストールしましょう。
 ①配布先からアドオンのzipをDL
→②アドオンをblenderにインストール
→③インストールしたアドオンを有効化
の3工程を踏んでおしまいです。
 アドオン追加に成功すればblenderの中央画面でショートカットNキーを押したときに出るサイドバー(旧ver.だとプロパティシェルフ)メニューに追加したアドオンが加わっているはず。

 blenderの上のメニューバーから①編集▶②プリファレンス▶③アドオンの設定を開き▶④右上のインストールからDLしてきたたzipを探してクリックで指定▶⑤青いボタンを押しインストール

 インストールが終わったらインストール済みのアドオンにチェックを入れて有効化すれば完了です。
 お疲れさまでした、これでBlender側の事前準備は終了となります。

①検索窓▶②アドオンの名前で検索▶③チェックボックスを探し▶④チェックを入れて有効化黄色部分を比べてわかるように有効化されたアドオンはタブとして表示される

 これでデータをpmx形式にする準備が整いました。
 アドオンは初回だけ追加の手間がかかりますが、追加時間を補って余るほど次回以降の作業時間を省いてくれる存在です。
 アドオン追加も慣れればすぐ出来るようになりますし、他にも便利なアドオンはたくさんあるので必要に応じて自分で追加していってください。

blenderにアドオンがうまく入らないとき

 さて、筆者の環境ではzipをインストールしたはずなのに、アドオンを有効化しようといくら探してもアドオン画面から見つからない現象がおきました。

[Blender] アドオンのインストール・アップデート・アンインストール方法のまとめ
https://qiita.com/nutti/items/5e9ebe9c28751066b688

 なので、筆者は上のサイトを参考にblenderのアドオンを保存しているフォルダに解凍したzipの中身を直接ぶちこんでいます。直接中身を入れるとうまくいく。

 ぶちこんだらプリファレンスに戻り更新を掛けて
①目的のアドオンを名前で検索
→②名前の前にあるチェックボックスをチェックして有効化
→③念の為「プリファレンスを保存」を押す
→④ウィンドウを閉じる、でアドオンの追加が終了です。
 プリファレンス更新以降はzipから直でDLするのと同じですね。 

 ちなみにアドオンをいれるフォルダ(addons)のパスは
「blenderソフトの保存場所\Blender\blender-2.93.1-windows-x64\2.93\scripts\addons」でした。
 インストーラを使ってインストールした人はファイルパスの2.93以前が違うかもしれない。
 このaddonsのなかに、zipファイルから展開して出てきたフォルダごと放り込んでいます。

画像が汚くて申しわけない。
blenderをzipでDLした場合のファイル構造の図を撮ろうとしたはずだった。

補足2:アドオンがうまく入らないときに(2022/01/08追記)

 たまに、zip展開して出てきたフォルダの中の更に下のフォルダが実は必要なアドオンの本体だったということもあります。
 中身を見て、__init__.pyと書かれたファイルがあれば、そこはアドオンの本体です。
 上サイトにあるように__init__.pyの入っているフォルダをまるまるaddonsに入れましょう。

 上で紹介した日本語英語を切り替えるアドオンはzipではなく.pyを一つだけダウンロードする方式になっていました。
 この場合も同じようにDLしてきた.pyファイルを
①blenderのaddonsフォルダの中に放り込んでblenderのソフトに戻る
→②プリファレンスのアドオンメニュー
→③更新
→④Toggle Translated UIを検索
→⑤有効化のチェックを入れる
の工程を踏んでください。(追記:2022/01/08)

 それから、アドオンblender2pmxemはBlenderではMMD PMX Format (Extend)で認識されています。MMDで検索するのが一番手っ取り早い。
 要は名前違うから気を付けてね!ってことです。


長くなった。次こそモデリング編に行きたい。

履歴:2022/01/08…バージョンの関連でいくつかの段落に追記をしました。
2022/01/15…次の記事から内容をいくつか引っ張ってきました。
合わせて文章構成も多少変わっています。