Blender + UE4 Groomで もふもふグレイマンを動かす時のTips

# はじめに
* リアルタイムでの髪のレンダリングシステムが、UE4.26でProduction Readyになりました。
* 2020年12月に無料で公開された [ミーアキャットデモ](https://www.unrealengine.com/marketplace/ja/product/meerkat-demo?lang=ja) のような、もふもふな毛皮を自分でも作ってみたい！と思い、無料の3DモデリングツールBlenderを使って、もふもふグレイマンを作成しました。Blenderの習熟度は基本操作がわかる程度です。

![ThirdPersonFur_512.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200334/c3769407-87b0-4da8-531f-3759ef3e3a11.gif)



# この記事でわかること
* Blenderで作成した毛皮の3DモデルをUE4にインポートして動かす時のTips
* 基本の作成の流れは、参考リンクを参照ください。YouTubeの動画を見た後に、このTipsを読むと理解しやすいかと思います。

# 参考リンク
* [ヘア レンダリング \| Unreal Engine ドキュメント](https://docs.unrealengine.com/ja/WorkingWithContent/Hair/Overview/index.html)
    * UE4でヘアレンダリングを有効にするための設定方法等が書かれています。
* [NEW Dynamic Hair Tutorial \- Blender to Unreal Engine 4 Groom UE4\.26 \- YouTube](https://www.youtube.com/watch?v=o5mrMIXhxSQ&t=158s)
    * Third Personテンプレートでお馴染みのグレイマンを使って、Blenderで毛皮を作成して、UE4で設定するまでの流れが分かります。
* [Blender Fur tutorial and Behind the scenes of "llama drama" \(beginner level\)\) \- YouTube](https://www.youtube.com/watch?v=c1xKA4itqow&t=2s)
    * Blenderでもふもふ毛皮を作成する時の参考になりました。 

# 開発環境
* 使用PCのスペック
    * Windows 10 Home
    * GeForce® RTX 2070 SUPER™
    * メモリ 16GB
* 使用ツール
    * UE4.26.1
    * Blender 2.92

# Tips
## 1. 毛皮のモデルは重たいので、分割して作成した方が良い
* はじめはグレイマンの上半身と下半身に分けて、毛皮を作成しようとしたら、[Tips3](https://qiita.com/sentomo594/items/7202495b9d33eb10ec19#3blender%E3%81%A7%E3%83%A1%E3%83%83%E3%82%B7%E3%83%A5%E3%81%8B%E3%82%89%E3%82%AB%E3%83%BC%E3%83%96%E3%81%AB%E5%A4%89%E6%8F%9B%E3%81%97%E3%81%AA%E3%81%84%E3%81%A8ue4%E3%81%AB%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%99%82%E3%81%ABgroom%E3%81%A8%E3%81%97%E3%81%A6%E8%AA%8D%E8%AD%98%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84)で登場するカーブ変換でBlenderがフリーズしました。一晩以上待っても処理が終わらなかったので、今回は頭・腕・胸・腰・足に分割して作成しました。
* あと、メッシュを分割する際も、表面の面をちゃんと選択しないと、下図のようにUE4に取り込んだ時に埃みたいのが発生します。(意図していない面からもパーティクルが発生した状態)

 ![grayman_hokori_small.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200334/e8984b8e-5892-cfc0-7a76-6262766a76b7.png)


## 2. 毛皮全体の毛量はパーティクル編集の「追加」で増やさない方が良い
* パーティクル編集の「追加」ボタン(下図の青枠)で毛量を増やすことができますが、調子に乗って増やしすぎるとまたカーブ変換でフリーズしてしまいました。。
* 全体の毛量を調整するときは、右側のパーティクルプロパティ > 放射 > 数の値を変更すると調整しやすかったです。
* もちろん、デザイン重視だったり、もっとスペックの良いPCの場合は、「追加」で毛量を増やしても良いと思います！

![perticle_add_arrow.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200334/794c44cb-3eff-ae62-2b39-05cabff4af5c.png)


## 3.Blenderでメッシュからカーブに変換しないと、UE4にインポートする時にGroomとして認識されない
* これ、結構はまりました。Blenderで作成した毛皮は、Alembic形式でエクスポートするのですが、[YouTube](https://www.youtube.com/watch?v=o5mrMIXhxSQ&t=158s)と同じ手順で作成しても、UE4にAlembicファイルをインポートする時に、「Alembic Cache Import Options」の画面が出てきてしまいます。このままだとGroomアセットとしてインポートされません。
* 下記リンクのように、Blenderでメッシュをカーブに変換してからAlembic形式でエクスポートすると、UE4にインポートする時に「Groom Import Options」の画面が表示され、Groomアセットとしてインポートできました。
    * https://forums.unrealengine.com/community/general-discussion/1714682-ue4-hair-grooms?p=1714918#post1714918

## 4. グレイマンのマテリアルをマットにすると毛皮と馴染む
* グレイマンの表面は元々反射するマテリアルなので、毛の間から見える地肌がテカテカしていると、もふもふ感が出ません。
* M_Male_Body(グレイマンのマテリアル)で使用しているML_Plastic_Shiny_Beigeをコピペして、ML_Plastic_Mat_Beigeを作成し、Roughnessの値を0.1から0.8に変更。M_Male_BodyでML_Plastic_Shiny_BeigeをML_Plastic_Mat_Beigeに置き換えました。

# おわりに
もふもふ毛皮の作り方が分かったので、今度はこの毛皮をハンドトラッキングで触って、もふもふを感じられるかどうかを試してみたいと思っています。