【ヘアーグルームモデリング】髪のモデリングとレンダリング

# 成果物
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/0ce48941-79ed-466c-abfb-54106e160a22.jpeg width=480>


<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/14876d75-f46e-30e0-8795-6315da28f77b.jpeg width=480>

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/98dbbdec-ac0f-69ca-4bc4-1307d3119391.png width=480>

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/c721bb06-7be7-a545-fd99-040f0166344d.jpeg width=480>



# 前置き
<details><summary>自己紹介</summary><div>

・遠藤じる
・某大阪ゲーム会社のTA
・主にシミュレーション業務、パイプライン業務をやらせて頂いてます

</div></details>

<details><summary>開発環境</summary><div>

| |CPU|GPU|メモリ|
|---|-----|-----|---|
|作業マシン|Ryzen9 3900X 12-Core Processor|RTX 2070 Super|64GB|
|レンダーマシン|Ryzen Threadripper 3970X 32-Core Processor|RTX 3080|192GB|

</div></details>

<details><summary>今回用いるツール</summary><div>

・Houdini 19.5.X
・Redshift Render 3.5.1X
・Groom Bear

</div></details>

<details><summary>Redshift Render とは</summary><div>

<https://www.maxon.net/en/redshift>
MAXONの製品であるRedshiftというレンダラは、
GPUを活用した非常に高速なレンダリングを可能にしたレンダラです。
小規模な設備で多くのイテレーションを回せるため、
個人の製作環境ですと非常に重宝します。

Redshiftのヘアーレンダリングは、まだまだ発展途上ですが、
それなりに高品質なものが出せていると感じます

</div></details>

<details><summary>Groom Bearとは</summary><div>

<https://kwac.gumroad.com/l/groombear>
Kamil Wacławiak氏が開発するGroom Bearは、
非常に高速なFurやHairのスタイリング作業が行えるツールです。

Houdiniには、GuideGroomというスタイリングノードがありますが、
断然このツールが勝っていると感じます。
一度使用すると、二度と抜けられないくらい便利なツールです。

</div></details>

# 概要
今回はヘアーモデリングをするにあたって、オススメなセットアップをご紹介します。
★はオススメ度で、高いほど何方にでも通用する内容だと判断しています。

## スタイリング系セットアップ早見表
|内容|オススメ度（最大★5）|
|---|-----|
|[スタイリング作業専用のプロジェクトを用意する](#スタイリング作業専用のプロジェクトを用意する)|★★★★★|
|[髪が生える場所を示したマスクを作る](#髪が生える場所を示したマスクを作る)|★★★★★|
|[グルームベアーのメリット](#グルームベアーのメリット)|★★★★☆|
|[毛束毎でスタイリング](#毛束毎でスタイリング)|★★★★☆|

## スタイリング系セットアップ早見表
|内容|オススメ度（最大★5）|
|---|-----|
|[クランプでシルエットを出す](#クランプでシルエットを出す)|★★★★☆|
|[セニングで全体のディティールアップ](#セニングで全体のディティールアップ)|★★★☆☆|
|[ベンドで毛束のディティールアップ](#ベンドで毛束のディティールアップ)|★★★☆☆|

## レンダリング系セットアップ早見表
|内容|オススメ度（最大★5）|
|---|-----|
|[髪の太さをコントロール](#髪の太さをコントロール)|★★★★★|
|[色味や光沢にムラを加える](#色味や光沢にムラを加える)|★★★★☆|
|[光沢に特別なムラを加える](#光沢に特別なムラを加える)|★★☆☆☆|
|[ベロシティブラーで滑らかに](#ベロシティブラーで滑らかに)|★★☆☆☆|



<details><summary>注意点</summary><div>

実際のスタイリングテクニックについては、
私がそもそもスタイリングのプロでなく、不確かな情報を伝えてしまう可能性があるため、省略します。
Youtubeや書籍を漁れば、プロのスタイリングテクニックはたくさん出てきますので、
ご自身で勉強してみてください。

私が活用した参考文献を何点か添えておきます。（Youtubeは伏せます）
・[本格セット＆アップ練習帳](https://www.genuine.tv/items/7869998)
・[図解　最短距離で切れるベーシックカット](https://www.kamishobo.co.jp/archives/book/%E5%9B%B3%E8%A7%A3%E3%80%80%E6%9C%80%E7%9F%AD%E8%B7%9D%E9%9B%A2%E3%81%A7%E5%88%87%E3%82%8C%E3%82%8B%E3%83%99%E3%83%BC%E3%82%B7%E3%83%83%E3%82%AF%E3%82%AB%E3%83%83%E3%83%88)
</div></details>


### スタイリング作業専用のプロジェクトを用意する
胴体や服などのモデリングをしているマスタープロジェクトが存在する場合、
そこでヘアーモデリングをすることは、あまり良いとは言えません。
何故なら、プロジェクトのデータサイズが大きいことが多いためです。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/66e605e5-af4a-e5d1-facf-6db6b4ce2440.png width=480>

スタイリング作業は、かなり頻繁に保存を行います。
そのため、保存処理が遅いとかなりストレスを感じます。
また、スタイリング作業自体も、プロジェクト内のデータ容量が増えやすい作業なため、
この作業自体がマスタープロジェクトを膨大化させかねません。

以上のことから、データが少なくてスッキリしたプロジェクトで作業しましょう。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/d83b815d-3bfb-9e2d-b41e-8858273eff08.png width=480>

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/a6b1dac7-531f-b8d5-abf8-2adfdd5c5aa5.png width=480>

### 髪が生える場所を示したマスクを作る
大まかにフロント、トップ、バック、レフト、ライトの5か所です。
あとは、もみあげをマスクに加えたり、バックをアッパーとボトムに分けて作る人もいます。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/6d74137f-5c60-13a0-c12f-8eccbcc73d06.png width=480>

僕は、もみあげを作る時作らない時を選びたい派なので、
ここのマスキングでは加えませんでした。

### グルームベアーのメリット
GroomBearは、「処理が軽い」「UXが優秀」と言ったメリットがあります。
特にスタイリングフローに長けており、自分のコンセプト通りのヘアーを実現しやすいです。

例を挙げます。
①ラディアルメニューによるサポート
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/dacce950-f902-819d-25ae-7a559b145b6f.png width=480>

②使いやすいブラシの数々
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/a3f55897-4d61-a31d-aacf-5f98eb96130e.png width=120><img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/e21c82ed-5e34-6836-f005-5bea0ce648c2.png width=140.5>

④ヘアーの選択が直感的
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/6bddfd96-d321-5572-1cf4-e35691046247.png width=480>

⑤マスキングが可能
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/9f313699-6559-8dfe-c0ca-2b4f585b33fc.png width=480>

詳しくは下記の動画をご覧ください。
https://www.youtube.com/watch?v=Zt0isofxe6E&t=62s&ab_channel=KamilWac%C5%82awiak

### 毛束毎でスタイリング
髪の毛は、犬や猫などの体毛をモデリングするのとは違い、
毛束単位でスタイリングするのがオススメです。
その方が、シルエットとなる毛束をしっかり作り分けることが出来るためです。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/2d6924c6-8590-0b08-a15b-7ac20b12703a.png width=420>
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/c7e5f2f0-ad6b-dec9-3873-83e48beb85ca.png width=420>

### クランプでシルエットを出す
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/c169c06a-a725-4085-51c5-f1c029a69253.png width=240> <img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/6716a526-0cf7-a46e-ded4-b8d97bcf7c0a.png width=225>


Hair Clumpノードで髪の毛を束ねます。これをクランプと呼びます。
クランプは、大→中→小といった具合に、徐々に細かく束ねていくと良いです。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/f77fdf42-dd7e-297b-340f-201be6d39d86.png width=480>


### セニングで全体のディティールアップ
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/d7fbc5db-f18a-116d-e3fd-53d4c4bf6d9c.png width=240> <img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/bd1a66ff-6579-f2d3-98f3-50dac9f0e0cd.png width=235.5>


髪の毛をセニングします。セニングとはすくことです。
髪のボリュームを減らすことが目的です。セニングすると髪は痛みます。
Guide ProcessのLengthで長さを変更することでセニングします。
セニングされた毛には、Frizzを加えることで、傷んだ見た目をデザイン出来ます。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/f88e6aa0-b009-3be6-a51f-46724a321dc0.png width=480>

### ベンドで毛束のディティールアップ
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/1e505ccb-7d6a-af50-bb82-b3a3df94a767.png width=240> <img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/0faf0f4f-ff35-d3f0-eaf6-ae46173f468a.png width=243>

髪の毛をベンドします。髪の毛は、短いほど軽く、長いほど重くなります。
なので、短いほど毛先が丸まりやすい傾向にあります。
clumpidアトリビュートをベースにベンドをコントロールすることで
クランプ束毎でベンドをする事が出来、纏まった印象でベンドを行えます。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/cce157a5-a45c-1d4c-fe04-dc616906b3d4.png width=480>


### 髪の太さをコントロール
髪の太さをコントロール出来るようにしておきます。
基本は、気持ち毛先を細めるくらいがオススメですが、デザイン次第では変更して良いと思います。

但し、根本から半ばにかけては、太らせた方がいいと思います。
何故かは良くわかりませんが、レンダリング時に禿げやすく見えるためです。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/5f251ce8-a04b-5eb4-fdd1-979b0abc7a68.png width=480>

### 色味や光沢にムラを加える
Hair Principalには、Variationというパラメータが存在します。
これでムラを与えることが出来ます。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/c30efced-10b9-e29c-9400-6698197c8a42.png width=480>


### 光沢に特別なムラを加える
Variationだけではムラが物足りなかった際に、更にムラを足す方法です。
Angle Shiftはハイライトの位置を調整出来るパラメータなのですが、
これに微妙なランダムを加えることで、アニメのような光沢表現を作成出来ます。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/b21f7ad7-09d4-6245-7d01-a2f53af93eee.png width=480>

### ベロシティブラーで滑らかに
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/d8f4c47f-9826-9b93-01d0-4d76fe7227bd.png width=240> <img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/e2216ae6-1096-c408-9bc0-c42a5eec7bf2.png width=250>
←がブラーなし / →がブラーあり

残念ながら現在のRedshiftでは、ヘアーのCryptomatteなどは書き出せません。
なので、髪を毛先に向けて滑らかにしたいのですが、これがコンポジットで実現出来ません。
そこで、ベロシティブラーを作成して擬似的なスムースを作成します。
<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3594951/2a720497-fbfc-fdf7-714c-bd43bc2c1237.png width=480>