# **Blenderで原神の3Dモデルを読み込んで、Rigifyで使いやすくするだけの記事**
## はじめに
> こちらは、デジクリ Advent Calendar 2022 の一日目の記事となります。
[**デジクリ**](https://digicre.net/)についてはこちらのサイトをご覧ください。
>
こんにちは。デジクリ17th、3DCG班の **みるお** です。最近、大学入学後に動かしていなかった別名義のYouTube活動をようやく再開しました。
全く季節の移り変わりは早いもので、あっという間に12月になってしまいました。
寒い。とても寒い。
やはりこういう日はレイトレーシングを効かせたゴリゴリのレンダリングを走らせ、GPUで暖を取るに限りますね。皆さんもそう思いませんか?
…え、私だけ?
話は変わりまして、最近はテイワット大陸でキャラの育成素材を集めるのが日課になっております。そして、その影響で **原神[^1] のモデルを使ったアニメーション** を Blender で作るようになってきたのですが、**キャラモデルの完成度が非常に高いのでモデルを動かすのがとても楽しいんです。**
弊サークル内でもBlender利用者の人口が増えているのですが、
- **BlenderにMMDモデルを入れる方法がわからん**
- **初期状態のリグでキャラのポーズを取らせるのがつらい(簡単にリグを付けたい)**
といった悩みの声を聞くことが多くなったので、今回は本テーマでデジクリ Advent Calendar 2022 初日の記事を書くことにしました。
### 想定している読者像
- Blender をPCに導入済みで、ちょっと触ったことがあるけど、アニメーション関連は触ったことがない人
- 原神を遊んでいて、3Dモデルすげえなと感心した人
- MMD系の動画をよく見ていて、CGアニメに興味がある人
**基本的に3DCGに少し慣れた方が読むことを想定してこの記事を書いています。**
> もちろん、上記に該当しない初心者や上級者の方もこの記事を読んでもらえれば幸いなのですが、基本的な用語などが少し説明足らず・初歩的な説明が多くてつまらなくなるかもしれません。
> お手数ですが、分からない単語は軽~くググるなりしながら読み進めてください。
>
>[name=みるお]
## 1.使用するもの
ざっと目を通しておくと記事の理解が進みます。
#### ソフトウェア
- Blender
- 最新版でOK。
- 本記事は [Blender 3.3.0](https://www.blender.org/download/lts/3-3/) で進めていきます。
- Blender自体の導入方法は本記事では扱いません(ググってくれ)
- 7Zip/WinRar
- 後述する*UuuNyaa Tools*のアセット検索機能に必要。どちらを選ぶかはお好みで。
#### アドオン
- Rigify
- Blender内蔵、Preferencesで有効化するだけ
- Blender MMD Tools
- https://github.com/UuuNyaa/blender_mmd_tools
- 有志が制作、以下の UuuNyaa Tools を入れるにはこれが必要。
- MMDモデルを読み込めるようになります
- Blender MMD UuuNyaa Tools
- こちらも有志が制作、今回はこれでMMDモデルにリグを付ける。[GitHubで公開中](https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools)
- なんと導入方法や機能を解説する[日本語版Wiki](https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools/wiki/Home.ja)もあり。うれしいね。
- **Rigify統合機能**があるのが他のアドオンと比べた時の強み。
#### モデル
- 任意のMMDモデル
- 「原神」に限らず、本記事の流れに従えば**大概の人型MMDモデルにはリグを付けられるようになります。**
- 本記事は原神v3.2アプデ時に配布された[「ナヒーダ」](https://www.bilibili.com/blackboard/activity-TVh3Jjh9W1.html)を例として使用。
## 2.原神の公式3Dモデル(MMDモデル)を調達
ネットに転がっているゲームの3Dモデルと聞くと、大概ゲーム内のデータから吸い出されたものが頭に浮かぶかもしれませんが(もしかして英語圏で多いだけ?)
なんと **「原神」の3Dモデルは公式(HoYoVerse)がpmx形式[^2]で配布してくれています。** 寛大な HoYoverse に感謝。
ただ、公式が中国語を使用しているのもあり、初見だとモデルの入手方法に戸惑いやすいので、ここで流れを一通り説明します。
### 2.1.原神モデルのまとめページに行く(HoYoLAB)
**HoYoLab**という原神の公式掲示板で、**@流浪人**氏が公式MMDモデルの配布先をまとめてくれています。
原神のv3.0前後でモデルの配布先まとめが分かれているので、適宜自分の使いたいキャラを探してページを開きましょう。
#### リンク集
[【原神】公式MMDモデル配布一覧(1.0から2.8まで)](https://www.hoyolab.com/article/3499094)
[【原神】公式MMDモデル配布一覧(3.0~3.2)](https://www.hoyolab.com/article/7165347)
本記事ではナヒーダのMMDモデルが配布されている [原神 v3.2 のモデル配布サイト](https://www.bilibili.com/blackboard/activity-TVh3Jjh9W1.html)に行きます。
> 
> ##### <center>初めてHoYoLABを開くと出てくる画面</center>
> 最初にHoYoLABの記事を開くとオススメのコンテンツについて聞かれますが、とりあえずSkipしてOK。
>
> [name=みるお]
### 2.2.公式の配布サイトからMMDモデルを入手
[原神 v3.2 のモデル配布サイト](https://www.bilibili.com/blackboard/activity-TVh3Jjh9W1.html) を開くと、**bilibili(中国版YouTube)にある原神のMMDモデル配布サイト**に飛ばされます。
どうやら絵や動画などの二次創作を奨励するために HoYoVerse が開催している、**原神の作品コンテストの特設ページ**みたいです。公式でこうして盛り上げてくれるのは結構嬉しいですね。

##### <center>原神公式のMMDモデル配布サイト(バージョン3.2特設)</center>
見慣れない中国語がいっぱいあって困惑しますが、
**下にスクロールしていけば「模型下载」にモデルの配布一覧が掲載されています。**
クリックして、お好みのモデルをダウンロードしましょう。
**今回はナヒーダ(纳西妲)のMMDモデルをダウンロードします。**

##### <center>ナヒーダのMMDモデル配布項目</center>
> 当たり前ですが、**MMDモデルの名前は中国語になっている**ので注意すること。
>
> [name=みるお]
### 2.3.入手したMMDモデルを解凍
ダウンロードすると、ナヒーダのモデルが入ってそうな**謎の文字列.zipのファイル**が現れます。

##### <center>謎の文字列.zip</center>
こう、名前がランダムだとなんだか怖そうですが、解凍してみるとちゃんと**ナヒーダのMMDモデルが内封されている**のが確認できます。
不安だったらtexフォルダを開いてテクスチャがあることを確認しましょう。

##### <center>解凍後のナヒーダのMMDモデルフォルダ</center>
**原神のMMDモデルの調達はこれで完了です。**
あとでBlenderから開きやすくなるように**フォルダの名前を謎の文字列のままにせず「Nahida」とかに変えて**、適当な場所にフォルダを移動させておきましょう。
> テクスチャの名前を変えると、Blender内でテクスチャの参照が切れる可能性があるので **'ファイル'** の名前はなるべくそのままにしましょう。
> (どこまでなら名前を変えてもよいか、要検証)
>
> [name=みるお]
#### 注意事項
> ※公式から配布されているMMDモデルですが、インストールによる不備等は自己責任でお願いします。
※使用に関しては、注意事項を厳守でお願いします。違反すると、配布されなくなる可能性もあります。
## 3.アドオンでBlenderにMMDモデルを読み込めるようにする
今回使用する3DCGソフト「Blender」ですが、**初期設定のままだと先ほどダウンロードしたMMDモデルを読み込めません。**
幸い、Blenderは無料でありオープンソースでもあるため、世界中の有志が自分でダウンロードできる **Blenderの拡張機能「アドオン」** を開発してくれています。
今回はUuuNyaa氏が開発した [*Blender MMD UuuNyaa Tools*](https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools) と、
このアドオンを使うために必要な [Blender MMD Tools](https://github.com/UuuNyaa/blender_mmd_tools) というアドオンをBlenderに導入し、
BlenderでMMDモデルを読み込んでRigifyで使いやすくするようにしましょう。
一応、一通りの流れを下に記載しますが、
具体的な導入方法、機能は[日本語版Wiki](https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools/wiki/Home.ja)があるのでそれを読んだ方が正直早いです。
### 3.1.Blender MMD Tools(UuuNyaa氏 ver)をダウンロード
UuuNyaa Tools を使う前に、大前提として [Blender MMD Tools](https://github.com/UuuNyaa/blender_mmd_tools) を導入する必要があります。
[Blender MMD Tools](https://github.com/UuuNyaa/blender_mmd_tools) のダウンロードは、[GitHubのリリースページ](https://github.com/UuuNyaa/blender_mmd_tools/releases) から行えます。
- https://github.com/UuuNyaa/blender_mmd_tools/releases
このアドオンは **MMDモデルを読み込む** という基本的な機能を備えており、
最初にこのアドオンを入れていない状態で UuuNyaa Tools を導入しようとすると、以下のように **「mmd_tools見つからないんだけど(怒)」** とBlenderに怒られてしまいます。気をつけましょう……(一敗)

##### <center>ModuleNotFoundError: No module named 'mmd_tools'</center>
Zipファイルがダウンロードできたら、**解凍せずに(!)** そのままzipファイルを適当な場所に移しましょう。モデルと同様、後の作業のためにもBlenderからアクセスしやすいところに置くのがオススメです。
### 3.2.Blender MMD UuuNyaa Tools をダウンロード
[*Blender MMD UuuNyaa Tools*](https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools) のダウンロードは、[GitHubのリリースページ](https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools/releases) から行えます。
- https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools/releases
基本的に最新版を入れるのがベストです。赤枠で囲ってある「**mmd_uuunyaa_tools-vなんとか.zip**」をダウンロードしましょう。
> これは Uuunyaa Tools に限らず、GitHubでリリースされているオープンソースのアプリ全般に言えることですが、
> 基本的には「なんとか.zip」や「なんとか.exe」などのファイルをインストールしましょう。
> Source Code (zip), (tar.gz) は開発者向けなので、**特に開発はせずただ利用したいだけの我々一般人は触らなくてOKです。**

##### <center>Blender MMD Uuunyaa Tools のリリースページ</center>
Zipファイルがダウンロードできたら、**解凍せずに(!)** そのままzipファイルを適当な場所に移しましょう。モデルと同様、後の作業のためにもBlenderからアクセスしやすいところに置くのがオススメです。
### 3.3.各種アドオンの有効化
UuuNyaa Tools のダウンロードが終わったら、いよいよBlenderでの操作に映ります。
以下の順番でアドオンを有効化していきましょう。
1. [Blender MMD Tools](https://github.com/UuuNyaa/blender_mmd_tools)
2. [Blender MMD UuuNyaa Tools](https://github.com/UuuNyaa/blender_mmd_uuunyaa_tools)
3. [Rigify (Blender 公式ドキュメント)](https://docs.blender.org/manual/en/2.81/addons/rigging/rigify.html)

##### <center>Blenderの初期画面。親の顔より見た。</center>
#### MMD Tools & UuuNyaa Tools
先ほどダウンロードした二つのアドオンは、以下の流れ(1 → 4)で有効化していきます。
Blender MMD Tools を例にしましょう。
1. 左上のバーから「編集」→「プリファレンス」→「アドオン」を選択して、
2. アドオンダイアログの右上にある **「インストール」** を押して、**mmd_tools-v2.8.0.zip** を選択
3. **チェックボックスに✓を入れて有効化**
4. Blenderの再起動(確実に反映させるため)
アドオンは一覧表の中から手動で探そうとするすごくメンドクサイので、右上にある検索バーを使うのをオススメします。
2番で油断してアドオン画面を閉じる人が多いですが、
その後に**チェックボックスに✓を入れて有効化**するのを絶対忘れないでください!!!!!!
UuuNyaa Tools も同様に有効化を行います。困ったら以下のgifで一通りの流れを復習しましょう。

##### <center>アドオンの有効化の流れ(UuuNyaa Toolsの公式Wikiより引用)</center>
#### Rigify
一般的に、3Dアニメーションを制作する際は3Dモデルを扱いやすくするために「**リグ**」を用意するのですが、
なんとその作業を自動で行ってくれる **アドオン「Rigify」** が Blender の中に内蔵されています。
つまり、インターネットからダウンロードする必要がありません。楽ですねぇ~
有効化の方法は先ほどの MMD Tools よりかは単純で、
1. 左上のバーから「編集」→「プリファレンス」→「アドオン」を選択して、
2. アドオンダイアログの右上にある **「検索バー」** で、**Rigify** を検索
3. **チェックボックスに✓を入れて有効化**
4. Blenderの再起動(確実に反映させるため)
で Rigify が使えるようになります。
他にも Blender には便利なアドオンが内蔵されているのですが、**使いたい場合は自分で有効化しに行く必要があります。**
> アニメーションに触れる一部の人しかこのアドオンは使わないのでしょうがない。
例えば、人型モデルを扱わない3Dモデラーとかにはいらないアドオンだしね
>
> [name=みるお]

##### <center>アドオンダイアログ内でRigifyを検索するとこんな感じ。</center>
## 4.MMDモデルを読み込む
#### Import MikuMikuDance Model (.pmd, .pmx) で読み込み
モデルの調達、アドオンの有効化を終え、いよいよここから本命の作業である **MMDモデルの読み込み** に入ります。先ほどの入念な準備が役に立ってきますよ。
Blenderの右上にある「File」→「Import」をクリックすると、
**MikuMikuDance Model(.pmd, .pmx)** が選択肢として出てきます。

##### <center>MMD Tools アドオンを入れたおかげで、Blender でも MMDモデル が扱えるようになりました。やったね。</center>
その後に、Blender の File Browser が出てきますので、**先ほど調達したMMDモデルを探しましょう。**(見つけづらいので検索バーを使うのがオススメ)
フォルダを開くなどして **.pmx ファイルを見つけたら、ダブルクリックしてBlender内にモデルを読み込みましょう。**
右のサイドバーで何やらFix IK Linksとかの **数値設定が出てきますが、今は特にいじらなくてもOK。** 使い方に慣れたら数値をいじってみましょう。

##### <center>本記事では、ナヒーダのMMDモデルを入れます</center>
#### カメラアングルの調整
これでMMDモデルが無事読み込めました。デフォルトだとすごく小さく写っているので、
**カメラアングルを適宜調整しておきましょう。**
テンキーの「.(句点)」でフォーカスを当てた後に、Shift-左クリック、真ん中クリックでカメラの調整をするのがおすすめです。
Blenderでの基本的なカメラの操作についての詳しい説明は本記事では扱いません。ググりましょう…

##### <center>1.ナヒーダを読み込んだ直後</center>

##### <center>2.カメラアングルを調整した後</center>
#### テクスチャを楽々に反映しよう
せっかくナヒーダのモデルを読み込めたのなら、テクスチャも見たいですよね。
Blenderに使い慣れている方なら**ビューポート内のシェーディングを調整すればよさそう**なのが分かると思いますが、もっと楽な方法をご紹介します。

##### <center>3.Solidシェーディングの詳細設定。</center>
今の状態でビューポート右上にある「v」ボタンをクリックすると、
シェーディングの詳細設定が出てきます。ここで、あとは **「MMD Shading Presets」→「Shadeless」** をクリックすれば、
**特に手間もかからずにMMDモデルのテクスチャが確認できます。**
やっぱりモデルに色が付くと楽しくなりますよね。

##### <center>4.テクスチャが反映されたナヒーダのモデル。</center>
##### 余談
MMDモデル内のボーン表示が邪魔に感じる時があるでしょう。
そんな時はビューポート右上にある **「二重の〇」ボタン** を押すと、
ボーンの表示を消すことができます。
(ちなみにこれは [Viewport Overlays](https://docs.blender.org/manual/ja/latest/editors/3dview/display/overlays.html) と言います。)
画像のように新しくウィンドウを増やして、
一方を**Overlayあり**、もう一方を**Overlayなし**と設定しておくと
ポーズの確認がしやすくなるのでおすすめです。

##### <center>5.Viewport Overlaysの有無。(左: Overlayあり、右: Overlayなし)</center>
> 今回公式が配布してくれたナヒーダのMMDモデルは、ちゃんとpmx内でテクスチャがくっついていたのですぐに確認できたのですが、
> 他のMMDモデルだと、たまにテクスチャの参照が切れていてモデルがピンク色(テクスチャがないときの色)になるらしいとのこと。
> こういう時は、私の知る限りだと根性でテクスチャの参照を直すしかないです。がんばりましょう…
>
> [name=みるお]
## 5.Rigifyでモデルのリグを自動生成する
この時点で既にMMDモデルを操作できるようになりましたが、
今のこの初期リグ(正式には**アーマチュア**と呼ばれる)だと細かいボーンを一つ一つ選択しないといけないので、ポーズ取りが大変ですよね。
ということで、ここからさらに UuuNyaa Tools と Rigify で**リグ**を新しく作り、
先ほど入れたMMDモデルを使いやすくしていきましょう。

##### <center>Rigifyで生成したリグの一例([アニログ](https://3dcg.comaroku.com/blender-rigfy-setup/)から引用)</center>
>これから説明する一連の流れですが、アドオン製作者のUuuNyaa氏が説明動画を公開しているので、正直それを見た方が早かったりします…
>困ったら本記事を読んでください。
> <iframe width="560" height="315" src="https://www.youtube.com/embed/av9rYRu0F8c" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
>
>
>[name=みるお]
#### MMD Rigify統合機能 で Metarig を作ろう
Rigifyでリグを作る際、その土台となるMetarigをまず用意する必要があります。
本来は自分のモデルにMetarigの設定を加えたりしたり(?)と、メンドクサイ作業をする必要があるのですが、
UuuNyaa Tools ではそういった前知識がなくてもボタン一つでMMDモデルに適したMetarigを作ってくれます。早速利用しましょう。
1. 左クリックでMMDモデルの **初期リグ(アーマチュア)** を選択
2. **ビューポートの右上にある「<」をドラッグ**し、サイドメニューを引き出す
3. サイドメニューの中で**MMDをクリック**し、その下で「MMD to Rigify」から **「Add Metarig」** で Metarig を生成。

##### <center>Metarig 生成前のナヒーダ、赤枠で囲ってある Add Metarig を Blender 内でクリックしよう</center>
Metarigを生成したら、これを土台として今回お目当ての**モデル操作用のリグ**を作ります。
これも UuuNyaa Tools ならボタン一つで出来ます。楽ですね~
4. 先ほど生成したMetarigを選択できているかを確認
5. Metarig の Object Data Properties 内で、Generate Rigを押す
ボタンを押した後のリグの生成にはしばらく時間がかかります。気長に待ちましょう。

##### <center>Metarig の Object Data Properties、Rigify欄内の Generate Rig をクリックしましょう</center>
しばらくしたらこんなリグが出来上がっていると思います。らしくなってきましたね。
ただ、今の状態だとこの**モデル操作用のリグ**を介してMMDモデルの操作ができないので、
UuuNyaa Tools の **Rigify統合機能** でこのリグとMMDモデルをつなげましょう。
**あと一歩です。**
> この時点で、リグを生成するために先ほど土台として使った **Metarig** は必要なくなりました。あとで混乱しないためにも **Metarig** を消しておきましょう。
>
>[name=みるお]

6. **モデル操作用のリグ**を選択した状態で、元のアーマチュアを**Shift+左クリックで複数選択**
7. ステップ2で開いたサイドメニューで、「MMD to Rigify」内の**統合機能(integrate)を用途に応じてどちらかを選ぶ。**
- MMD compatibility focused integrate
- このリグで作ったアニメーションをMMDに移植したい場合に使う
- **Rigify operability focused integrate**
- Blender内でのみアニメーションを作る場合に使う
- **今回はこっちを使う**

##### <center>UuuNyaa ToolsのRigify統合機能</center>

##### <center>出来上がり</center>
### はい、これでリグが出来上がりました。
**お疲れ様でした。**
今回 Rigify で生成したリグには
- 手足のFK-IKの切り替え機能
- 目の焦点ボーン
- 指ボーンの操作拡張(「s」キー(拡大縮小)で指を丸められる)
などの便利な機能があります。
ここから先、このモデルをどうするかは(規約を破らない範囲では)皆様の自由です。
**Ctrl-TabでPoseモードに移り、今回リグを付けたMMDのモデルで静止画やアニメーションを是非作ってみましょう。**
## おわりに

##### <center>ポーズを取ったり、表情モーフを調整して制作したナヒーダの静止画。かわいいですね。</center>
ここまで読んでくださり、ありがとうございます。
本記事では、3Dアニメーションや静止画を作る前段階として用意する「モデル」や「リグ」についての話をまとめました。
できれば初心者向けにもこういった**CG専門用語の説明**を入れたかったのですが、いかんせん私の知識と時間が足りなくてアドカレ公開までに間に合いませんでした… orz
本記事で
- どこから原神の公式モデルを調達するか
- アドオンの有効化の方法
- BlenderへのMMDモデルの入れ方
- Rigifyの基本的な使い方
をなんとなく理解できていたら幸いです。
いろいろと説明足らずな点が多いかもしれません。「ここについてもっと知りたい」とかの要望があればコメントにてぜひお聞かせください。
**また、「いいね」と「Twitter等SNSへの拡散」をよろしくお願いします!**
アドカレに参加してくださったデジクリの方、本当にありがとうございます。
**皆さん(特に新入生)の記事を楽しみにお待ちしております。**
### 明日の記事
明日の記事は **デジクリ18th ikabomb さん** の **「イカ・ゲーミングメモ」** です。
https://note.com/esqrt2/n/n9bc111cfacb4
お楽しみに。
[^1]: 原神(英語名: Genshin Impact): 株式会社HoYoverseが開発しているアニメ調のオープンワールドRPGのこと。
[^2]: pmx形式: MikuMikuDance **(MMD)** の3Dモデル形式。